jQuery高版本(1.9+)中已经把live方法给删除了

原创 野人  2022-01-26 21:23  阅读 73 次

只能说多看文档,文档,谁叫技术这东西就是更新太快了。

最直接的表现就是看完网上的教程文章后,把文章里头的代码复制过来,心想这下成了,有前人栽树,后人乘凉,然而实际上出问题了还定位不到问题,还使劲的怀疑自己是不是复制错了啊,万万没想到的是技术(jQuery版本)更新了,导致的啊。

所以,有时候折腾还是有风险的哈哈,记得多备份准没有错。

要折腾的话,起码要懂点代码基础,这样能看得懂报错,再根据错误慢慢去搜索引擎,最后根据官方文档(推荐)/文章依葫芦画瓢了。

老实说,如果最近没有去折腾一个新的功能,我估计jQuery的live方法被删除了,我是不太可能知道,毕竟平时用的比较多的,都是一些框架/库方法,而现在主流的前端框架是不推荐直接操作DOM,而是通过数据来驱动DOM的改变,当然了底层最终还是要操作DOM的,只是人家框架考虑方面就比较多,算法,性能优化..等等这些,反正我是用不上。

关于live这个方法,我看了下官方文档是说,1.7版本已弃用,1.9版本已删除,具体可点击查看

而目前jQuery的版本都已经更新到了3.6.0,所以就不能再使用live的方法了,而官方也是推荐把live方法改成on方法,不多说了,给大家来个例子吧。

html部分代码:

<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
</ul>

jQuery代码:

//以下的两个方法的作用都是为了能够正确获取到将来的新增的元素

//之前的live写法
$('li').live('click',function(e){
    console.log(e)
})
//替换成on的写法
$(document).on('click','li',function(e){
    console.log(e)
})

无论是on方法还是live方法,底层原理其实就是利用了DOM事件委托机制/冒泡

本文地址:https://www.yerenwz.com/5629.html
版权声明:本文为原创文章,版权归 野人 所有,欢迎分享本文,转载请保留出处!

发表评论