发表于: 2017-03-31 23:43:04
1 714
今天完成的事:
a,js的学习:
1,对象:一种无序的数据集合,由若干个“键值对”(key-value)构成
var o = {
p: 'Hello World'
};
大括号就定义了一个对象,它被赋值给变量o。这个对象内部包含一个键值对,p是“键名”字符串Hello
World是“键值”;键名与键值之间用冒号分隔。
还可以用new命令生成一个Object对象的实例
var o2 = new Object();
属性:对象的每一个“键名”又称为“属性”(property),它的“键值”可以是任何数据类型
for...in循环用来遍历一个对象的全部属性
var o = {a: 1, b: 2, c: 3};
for (var i in o) {
console.log(o[i]);
}
// 1
// 2
// 3
2;有限状态机 有三个特征
状态总数(state)是有限的
任一时刻,只处在一种状态之中
某种条件下,会从一种状态转变(transition)到另一种状态
dome 鼠标悬停的时候,菜单显示;鼠标移开的时候,菜单隐藏
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;
}
}
};
3;任务4的编写完成1/3;
明天计划的事:
1,继续学习JS
2,编写任务4;
遇到的问题:
先直接上代码
代码1:$("#jox").hover(function(){
if($(".name").is(":visible")){
$(".name").hide();
}else{
$(".name").show();
}
})//这里hover事件不会执行
代码2: $("button").hover(function(){
if($(".name").is(":visible")){
$(".name").hide();
}else{
$(".name").show();
}
})//完美执行
百度查了一下,hover事件对ID选择器是支持的 ,那么我这里是为什么呢?
收获:
对JS的对象有了更加深入的了解。有限状态机感觉优点像是转换。
评论