码迷,mamicode.com
首页 > Web开发 > 详细

jquery事件绑定函数

时间:2016-06-13 15:33:11      阅读:754      评论:0      收藏:0      [点我收藏+]

标签:

1、bind

使用语法:

1  jQueryObject.bind( events [, data ], handler )
2  jQueryObject.bind( events [, data ] [, isDefaultBubble ] )
3  jQueryObject.bind( eventsMap )

ps:执行bind()时,会为当时文档中存在的每个匹配的元素绑定事件,如果之后你向文档中添加了新的与bind()绑定的元素相同的元素,绑定事件不会对其生效。如果你希望绑定事件对未来新添加的元素也生效,请使用on()delegate()live()等事件函数(尽量优先使用靠前的事件函数)。

2、on

使用语法:

1 jQueryObject.on( events [, selector ] [, data ], handler )
2 jQueryObject.on( eventsMap [, selector ] [, data ] )

  从jQuery 1.7开始,on()函数提供了绑定事件处理程序所需的所有功能,用于统一取代以前的bind()、 delegate()、 live()等事件函数。

  关于参数selector,你可以简单地理解为:如果该参数等于null或被省略,则为当前匹配元素绑定事件;否则就是为当前匹配元素的后代元素中符合selector选择器的元素绑定事件。参数handler中的this指向当前匹配元素的后代元素中触发该事件的DOM元素。如果参数selector等于null或被省略,则this指向当前匹配元素(也就是该元素)。

ps:如果传递了selector参数,那么on()函数并不是为当前jQuery对象匹配的元素绑定事件处理函数,而是为它们的后代元素中符合选择器selector参数的元素绑定事件处理函数。on()函数并不是直接为这些后代元素挨个绑定事件,而是委托给当前jQuery对象的匹配元素来处理。由于DOM 2级的事件流机制,当后代元素selector触发事件时,该事件会在事件冒泡中传递给其所有的祖辈元素,当事件流传递到当前匹配元素时,jQuery会判断是哪个后代元素触发了事件,如果该元素符合选择器selector,jQuery就会捕获该事件,从而执行绑定的事件处理函数。

3、delegate

使用语法:

jQueryObject.delegate( selector , events [, data ], handler )
jQueryObject.delegate( selector, eventsMap )

ps:参数的意义和on方式一样,两者区别是seleter和events顺序不同,delegate的selector是必需的,on的selector是可选的

jquery事件绑定函数

标签:

原文地址:http://www.cnblogs.com/chendc/p/5580383.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!