文档章节

jQuery,使用on代替delegate,live 写法区别

Ocean_K
 Ocean_K
发布于 2016/10/27 18:04
字数 343
阅读 22
收藏 0

早期对页面上后期加载的动态元素,赋事件或值的时候,是使用live的.  由于效率比较低(其实数据不多也感觉不出来),后面使用delegate委托来代替了,再后面,1.7以后使用on 来代替delegate了. live,delegate在新版本中都还可以用. 它们在写法上有差别,一段时间不写容易混,写下来备忘. 如点击div里的任意一个button时增加一个新button:

页面:

<div id="panel">   
      <input type="button" name="name"  value="clone"class="btnAdd" />
</div>

 

脚本:

1.1 使用live

jQuery版本1.3+

$('.btnAdd').live('click', function () {
    $(this).clone().appendTo('#panel');
});

1.2 直接把live改成on, 没有给范围比如#panel,这对页面上一开始有的按钮有效. 也就是说无法直接这样代替live

$('.btnAdd').on('click', function () {
    $(this).clone().appendTo('#panel');
});

 

2.使用delegate 需要给它一个范围才行,如#panel,让它到里面找.这样可以实现live一样的效果.

jQuery版本1.4.3+

$('#panel').delegate('.btnAdd', 'click', function () {
    $(this).clone().appendTo('#panel');
});

 

3.使用on 给它一个范围才行,如#panel,让它到里面找. 这样可以实现live和delegate一样的效果.

里面的'click', '.btnAdd'跟上面的delegate是相反的.只要记住on click是挨在一起的就行了.

jQuery版本1.7+

$('#panel').on('click', '.btnAdd', function () {
    $(this).clone().appendTo('#panel');
});

 

 

本文转载自:http://blog.csdn.net/itchiang/article/details/21596761

Ocean_K
粉丝 20
博文 104
码字总数 40133
作品 0
昌平
程序员
私信 提问
关于jQuery新的事件绑定机制on()的使用技巧

本篇文章介绍了,关于jQuery新的事件绑定机制on()的使用技巧。需要的朋友参考下 今天浏览jQuery的deprecated列表,发现live()和die()在里面了,赶紧看了一下,发现从jQuery1.7开始,jQuery引...

Idiot_s_Sky
2014/01/11
133
0
jQuery新的事件绑定机制on()

今天浏览jQuery的deprecated列表,发现live()和die()在里面了,赶紧看了一下,发现从jQuery1.7开始,jQuery引入了全新的事件绑定机制,on()和off()两个函数统一处理事件绑定。因为在此之前有...

随智阔
2013/07/08
98
0
jQuery中的.bind()、.live()和.delegate()之间区别分析

jQuery中的.bind()、.live()和.delegate()之间区别分析: DOM树 首先,可视化一个HMTL文档的DOM树是很有帮助的。一个简单的HTML页面看起来就像是这个样子: 事件冒泡(又称事件传播) 当我们点击...

freedonn
2014/02/27
21
0
jQuery的.bind()、.live()和.delegate()之间区别

摘要:jQuery的.bind()、.live()和.delegate()之间的区别并非总是那么明显的,然而,如果我们对所有的不同之处都有清晰的理解的话,那么这将会有助于我们编写出更加简洁的代码,以及防止在交...

i33
2012/09/20
83
0
jQuery中的.bind()、.live()和.delegate()之间区别分析

jQuery中的.bind()、.live()和.delegate()之间区别分析,学习jquery的朋友可以参考下。 DOM树 首先,可视化一个HMTL文档的DOM树是很有帮助的。一个简单的HTML页面看起来就像是这个样子: 事件...

吟啸_徐行
2014/02/20
37
0

没有更多内容

加载失败,请刷新页面

加载更多

64.监控平台介绍 安装zabbix 忘记admin密码

19.1 Linux监控平台介绍 19.2 zabbix监控介绍 19.3/19.4/19.6 安装zabbix 19.5 忘记Admin密码如何做 19.1 Linux监控平台介绍: 常见开源监控软件 ~1.cacti、nagios、zabbix、smokeping、ope...

oschina130111
昨天
64
0
当餐饮遇上大数据,嗯真香!

之前去开了一场会,主题是「餐饮领袖新零售峰会」。认真听完了餐饮前辈和新秀们的分享,觉得获益匪浅,把脑子里的核心纪要整理了一下,今天和大家做一个简单的分享,欢迎感兴趣的小伙伴一起交...

数澜科技
昨天
26
0
DNS-over-HTTPS 的下一代是 DNS ON BLOCKCHAIN

本文作者:PETER LAI ,是 Diode 的区块链工程师。在进入软件开发领域之前,他主要是在做工商管理相关工作。Peter Lai 也是一位活跃的开源贡献者。目前,他正在与 Diode 团队一起开发基于区块...

红薯
昨天
44
0
CC攻击带来的危害我们该如何防御?

随着网络的发展带给我们很多的便利,但是同时也带给我们一些网站安全问题,网络攻击就是常见的网站安全问题。其中作为站长最常见的就是CC攻击,CC攻击是网络攻击方式的一种,是一种比较常见的...

云漫网络Ruan
昨天
27
0
实验分析性专业硕士提纲撰写要点

为什么您需要研究论文的提纲? 首先当您进行研究时,您需要聚集许多信息和想法,研究论文提纲可以较好地组织你的想法, 了解您研究资料的流畅度和程度。确保你写作时不会错过任何重要资料以此...

论文辅导员
昨天
44
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部