发表于: 2017-04-04 23:37:43

1 690


今天完成的事:

学习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就一定是对象么?

           

收获:



返回列表 返回列表
评论

    分享到