jQuery change()方法两种写法的差异是什么?
两种jQuery change()写法的差异
核心差异在于是否会立即触发一次change事件:
写法一:
jQuery(selector).change(function(){//something}).change();这段代码完成两个操作:
- 给匹配到的元素绑定change事件的处理函数;
- 链式调用无参数的
change(),主动触发一次该元素的change事件,绑定的处理函数会立即执行一次。之后用户操作(比如修改输入框内容、切换下拉选项)触发元素change事件时,函数还会再次执行。
写法二:
jQuery(selector).change(function(){//define your code here to execute once the change event is happened.});这段代码仅完成一个操作:给元素绑定change事件的处理函数。只有当元素的change事件被用户操作或其他代码主动触发时,这个函数才会执行,不会自动立即执行。
举个直观例子:如果selector是下拉框,写法一绑定完函数后会立刻执行一次函数;写法二则只会在用户手动切换下拉选项时,才执行函数。
内容的提问来源于stack exchange,提问作者Segismunda
相关产品推荐
相关产品推荐

