jquery1.9以后的版本,live函数不存在了,如何解决?
发布于 作者:苏南大叔 来源:程序如此灵动~
你是否曾经纠结于jquery的版本选择,是选择最经典的1.7.2,还是支持ie8的最后的1.12.4,亦或是选择只支持高版本浏览器的2还是3系列。别纠结了,貌似jquery已经快成过去时了。当年的jquery一统天下,到现在的reactjs,vuejs等等根本不关jquery什么事情。不得不说,时代过去了。就像当年的jquery替换prototype一样。现在的流行框架已经开始废弃jquery了。

好了,废话少说。书归正题。jquery老版本里面有个live函数,是非常的好用啊。它好用就好用在,dom是后生成的话,其live定义也是生效的。那么最新版本的jquery里面,早就不存在live函数了。那么替换它的方法是什么呢?那就是on。定义在body/document或者父元素上面的on函数。
老写法live
下面举例说明一下,live范例:
//jQuery1.9-
$("#panel").find("div").live("click",function(){
alert("x");
}).addClass("x");
//jQuery1.9-
$("a").live("focus",function(){
this.blur();
}); 新写法on
新版本jquery,用on代替live:
//jQuery1.9+
$("#panel").on("click","div",function(){
alert("x");
}).find("div").addClass("x");
//jQuery1.9+
$(document).on("focus","a",function(){
this.blur();
}); 结语
好了,写这些东东,目前还有用。不知道过两年,类似reactjs们全面大爆发之后。这些jquery的东东是不是会被像老古董一样收起来藏进箱子底里面呢?到时候,我们会想怀念当年的prototype一样,怀念jquery的。
更多jquery的相关文字,请点击下面的链接查看: