发表于: 2017-04-04 23:37:43
1 666
今天完成的事:
学习jQuery.val()
val()函数用于设置或返回当前jQuery对象所匹配的DOM元素的value值。
该函数常用于设置或获取表单元素的value属性值。例如:<input>、<textarea>、<select>、<option>
、<button>等。
jQueryObject.val( [ values ] )
如果没有指定values参数,则表示获取第一个匹配元素的value值;如果指定了value参数,则表示设置
所有匹配元素的value值。
继续状态机的研究:
使用更简洁的方法
var fsm = StateMachine.create({
initial: 'green',
events: [
{ name: 'warn', from: 'green', to: 'yellow' },
{ name: 'stop', from: 'yellow', to: 'red' },
{ name: 'ready', from: 'red', to: 'yellow' },
{ name: 'go', from: 'yellow', to: 'green' }
]
});
交通信号灯的初始状态(initial)为green,events属性是触发状态改变的各种事件,比如warn事
件使得green状态变成yellow状态,stop事件使得yellow状态变成red状态等等。
onbeforewarn:在warn事件发生之前触发。
onafterwarn(可简写成onwarn) :在warn事件发生之后触发。
onleavegreen :在离开green状态时触发。
onentergreen(可简写成ongreen) :在进入green状态时触发。
明天计划的事:
1,完善JS任务2-4
2,继续学习JS
遇到的问题:
var menu = {
// 当前状态
currentState: 'hide',
// 绑定事件
initialize: function() {
var self = this;
self.on("hover", self.transition);
},
// 状态转换
transition: function(event){
switch(this.currentState) {
case "hide":
this.currentState = 'show';
doSomething();
break;
case "show":
this.currentState = 'hide';
doSomething();
break;
default:
console.log('Invalid State!');
break;
}
}
};
这个是之前学习的状态机,家豪说这里的this 是一个对象,我也以为这里的this是个对象,但是我
dome 发现这里的this 并不是一个对象 而是获取到的DOM 节点。所以js jq 中this就一定是对象么?
收获:
评论