JQuery事件live与click的区别

本文描述了一种前端页面出现重复请求导致性能下降的问题,并详细分析了问题的原因在于使用live绑定事件后,即使元素已不存在仍会执行绑定的事件,从而引发多次不必要的请求。

    今天发现程序中的一的Bug,分页请求会越来越慢,同一用户 请求次数越多越慢,直到浏览器崩溃。

    测试返回数据的程序和JS中是否有循环和BUG,最后一直找不出来,百思不得其解。

    最后在前端测试中,经多次仔细观察后发现,第一次请求正常,从第二次请求起,ajax会发送多个同样的请求。如此,越来越卡的现象便有了合理的解释。

    查找程序后却没有找到原因,最后把原因锁定在事件上。因为每次请求结果都会替换ajax绑定的事件ID,所以最终锁定在live('click',function());上,最后经测试,live只要绑定上事件,不管ID元素是否存在,都一样会执行,即live不仅能绑定未来的事件,以前绑定的事件不会失效!

转载于:https://my.oschina.net/tanwen/blog/372167

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值