jQuery 1.9.1中live()变更
轉(zhuǎn)載鏈接:http://www.360doc.com/content/13/1222/22/14022539_339358149.shtml
開始的時候在jQuery.1.7.1中使用了.live()覺得很好用,特別是在綁定事件之后再加入的元素的事件綁定上很方便(第一次live之后以后添加的元素就不需要綁定啦)
后來jQuery更新到1.9.1,頁面中的.live報錯:"has no method live", 后來查了文檔才知道在新版本中做了修改。
jQuery.1.8.1:
$("#liveID").live("click",function(){alert("live click");});
jQuery.1.9.1:
$(document).on("click","#liveID",function(){alert("live click");});
?
jQuery網(wǎng)站上這么說的:
As of jQuery 1.7, the?.live()?method is deprecated. Use?.on()?to attach event handlers. Users of older versions of jQuery should use?.delegate()?in preference to?.live().
This method provides a means to attach delegated event handlers to the?document?element of a page, which simplifies the use of event handlers when content is dynamically added to a page. See the discussion of direct versus delegated events in the.on()?method for more information.
改進后的使用建議:
1 $(selector).live(events, data, handler); // jQuery 1.3+
2 $(document).delegate(selector, events, data, handler); // jQuery 1.4.3+
3 $(document).on(events, selector, data, handler); // jQuery 1.7+
示例:
1 $("a.offsite").live("click", function(){ alert("Goodbye!"); }); // jQuery 1.3+
2 $(document).delegate("a.offsite", "click", function(){ alert("Goodbye!"); }); // jQuery 1.4.3+
3 $(document).on("click", "a.offsite", function(){ alert("Goodbye!"); }); // jQuery 1.7+
總結(jié)
以上是生活随笔為你收集整理的jQuery 1.9.1中live()变更的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 不可忽略的apache 的 Keep A
- 下一篇: vnr光学识别怎么打开_干货|指纹锁的指