jQuery on()方法绑定动态元素的点击事件实例代码浅析


Posted in Javascript onJune 16, 2016

之前就一直受这个问题的困扰,在jQuery1.7版本之后添加了on方法,之前就了解过,其优越性高于live(),bind(),delegate()等方法,在此之前项目中想用这个来测试结果发现,居然动态生成的标签点击了没反应,而live方法却能够支持,于是乎到处查资料,问网友,结果找了好久在一篇文章中终于找到了答案。。。

jQuery 使用on绑定动态生成的元素时,不能直接用该对象操作,而是选择其非动态生成的父节点然后再找到本身才能达到效果。大家看看源码就知道了。生成的按钮基数项on方法点击无效live方法有效。

比如页面上有下边两个元素:

<input type="button" name="addbtn" value="按钮添加" />
<div id="test">
</div>

使用下边的jQuery代码大家可以对比看看区别:

$(function () {
var a = 1,
$_div = $('#test');
$('input[name=addbtn]').on('click', function () {
$_div.append('<input type="button" name="test' + a + '" value="按钮' + a + '"/>');
a++;
});
//偶数项点击事件
$_div.on('click', 'input[name^=test]:even', function () { 
alert('我是有效的on方法,你能看见我吗:' + this.value);
});
//奇数项绑定的点击事件 发现点击无效,而是用live方法却能够支持
$('input[name^=test]:odd').on('click', function () { 
alert('我是无效的on方法,你不能看见我');
});
//奇数项绑定的点击事件 发现点击无效,而是用live方法却能够支持
$('input[name^=test]:odd').live('click', function () {
alert('我是live方法,你能看见我吗:' + this.value);
});
});

以上所述是小编给大家介绍的jQuery on()方法绑定动态元素的点击事件的相关知识,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
DWZ刷新dialog解决方法
Mar 03 Javascript
jQuery实现Div拖动+键盘控制综合效果的方法
Mar 10 Javascript
JQuery.Ajax()的data参数类型实例详解
Nov 20 Javascript
node.js使用cluster实现多进程
Mar 17 Javascript
Sublime Text新建.vue模板并高亮(图文教程)
Oct 26 Javascript
vue获取dom元素注意事项
Dec 28 Javascript
浅析Proxy可以优化vue的数据监听机制问题及实现思路
Nov 29 Javascript
产制造追溯系统之通过微信小程序实现移动端报表平台
Jun 03 Javascript
javascript关于“时间”的一次探索
Jul 24 Javascript
JavaScript HTML DOM元素 节点操作汇总
Jul 29 Javascript
js实现抽奖的两种方法
Mar 19 Javascript
js实现无缝轮播图特效
May 09 Javascript
jQuery页面元素动态添加后绑定事件丢失方法,非 live
Jun 16 #Javascript
JSON字符串和对象相互转换实例分析
Jun 16 #Javascript
jQuery的层级查找方式分析
Jun 16 #Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
Jun 16 #Javascript
JS中sort函数排序用法实例分析
Jun 16 #Javascript
JS原型对象的创建方法详解
Jun 16 #Javascript
JS使用单链表统计英语单词出现次数
Jun 16 #Javascript
You might like
php数组函数序列之array_slice() - 在数组中根据条件取出一段值,并返回
2011/11/07 PHP
ThinkPHP数据操作方法总结
2015/09/28 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
2016/06/13 PHP
详谈PHP中的密码安全性Password Hashing
2017/02/04 PHP
js GridView 实现自动计算操作代码
2009/03/25 Javascript
解决IE下select标签innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
2010/05/13 Javascript
js实现鼠标拖动图片并兼容IE/FF火狐/谷歌等主流浏览器
2013/06/06 Javascript
代码触发js事件(click、change)示例应用
2013/12/13 Javascript
教你如何使用PHP输出中文JSON字符串
2014/05/22 Javascript
AngularJS 整理一些优化的小技巧
2016/08/18 Javascript
原生js实现商品放大镜效果
2017/01/12 Javascript
JS实现简易留言板(节点操作)
2020/03/16 Javascript
electron 如何将任意资源打包的方法步骤
2020/04/16 Javascript
Vue使用axios引起的后台session不同操作
2020/08/14 Javascript
忘记ftp密码使用python ftplib库暴力破解密码的方法示例
2014/01/22 Python
python网络编程学习笔记(10):webpy框架
2014/06/09 Python
Python重新引入被覆盖的自带function
2014/07/16 Python
Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法
2015/05/22 Python
Python 实现淘宝秒杀的示例代码
2018/01/02 Python
python实现自动化报表功能(Oracle/plsql/Excel/多线程)
2019/12/02 Python
python 插入日期数据到Oracle实例
2020/03/02 Python
基于FME使用Python过程图解
2020/05/13 Python
利用python实现平稳时间序列的建模方式
2020/06/03 Python
租赁意向书范本
2014/04/01 职场文书
代理协议书范本
2014/04/22 职场文书
给校长的建议书100字
2014/05/16 职场文书
节能环保家庭事迹材料
2014/08/27 职场文书
派出所副所长四风问题个人整改措施思想汇报
2014/10/13 职场文书
新郎婚礼答谢词
2015/01/04 职场文书
满月酒邀请函
2015/01/30 职场文书
2015年教师节主持词
2015/07/03 职场文书
我对PyTorch dataloader里的shuffle=True的理解
2021/05/20 Python
手把手教你从零开始react+antd搭建项目
2021/06/03 Javascript
攻略丨滑雪究竟该选哪款对讲机?
2022/02/18 无线电
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python
Python编写车票订购系统 Python实现快递收费系统
2022/08/14 Python