老生常谈js动态添加事件--- 事件委托


Posted in Javascript onJuly 19, 2016

其所谓的动态添加事件实质就是指js中的事件委托。

我们知道在js中,事件处理只能绑定在当前被选中的元素上,换句话也就是说,事件处理只能绑定在当前文档已经存在的元素上!但是,往往小伙伴们都会遇到一个问题就是,我的元素是后来动态添加到页面的,而我又想给该元素绑定事件,怎么处理?

为了说明白这一问题,我们假设需要给后来添加到当前页面的元素添加click事件。

解决这一问题的核心就是利用js的委托事件。委派事件的优势就是可以给未存在的元素绑定事件,而且委派事件往往开销也会更小!

题外话:举一个最简单的例子:当页面上有1000个div的时候,如果直接给div绑定click事件,其会为1000个元素绑定事件。但是,如果用事件委托,只需要一个元素绑定事件即可。PS:希望????履芄蝗媚忝靼资录??械暮?濉?/p>

我们只是想知道动态创建的元素如何添加事件,你说这么多做什么,做什么...

好吧,言归正传,看具体实现:

// 模拟动态创建元素li
$.ajax({
  type: 'get',
  data: {},
  success: function () {        
    $('<li>').addClass('aaa').html('11111111').appendTo($('body'));
  },
});

// 给为我们刚刚动态创建的元素添加事件
$(document).on('click', 'li[class=aaa]', function(){
  console.log('ddd');
});

以上这篇老生常谈js动态添加事件--- 事件委托就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
cnblogs 代码高亮显示后的代码复制问题解决实现代码
Dec 14 Javascript
js 输出内容到新窗口具体实现代码
May 31 Javascript
jquery限定文本框只能输入数字即整数和小数
Nov 29 Javascript
JS+CSS实现可拖动的弹出提示框
Feb 16 Javascript
JavaScript数据类型判定的总结笔记
Jul 31 Javascript
详解jQuery中的empty、remove和detach
Apr 11 Javascript
jQuery选择器总结之常用元素查找方法
Aug 04 Javascript
微信小程序商品到详情的实现
Jun 27 Javascript
Vue中v-show添加表达式的问题(判断是否显示)
Mar 26 Javascript
jQuery实现table表格信息的展开和缩小功能示例
Jul 21 jQuery
JavaScript引用类型Date常见用法实例分析
Aug 08 Javascript
Vue组件简易模拟实现购物车
Dec 21 Vue.js
Bootstrap表单布局
Jul 19 #Javascript
一次$.getJSON不执行的简单记录
Jul 19 #Javascript
深入浅析javascript中的作用域(推荐)
Jul 19 #Javascript
javascript弹出带文字信息的提示框效果
Jul 19 #Javascript
总结在前端排序中遇到的问题
Jul 19 #Javascript
ECMAScript6快速入手攻略
Jul 18 #Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
Jul 18 #Javascript
You might like
如何将一个表单同时提交到两个地方处理
2006/10/09 PHP
php获取给定日期相差天数的方法分析
2017/02/20 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
PHP简单实现防止SQL注入的方法
2018/03/13 PHP
Laravel+Intervention实现上传图片功能示例
2019/07/09 PHP
获取服务器传来的数据 用JS去空格的正则表达式
2012/03/26 Javascript
jquery 延迟执行实例介绍
2013/08/20 Javascript
AngularJS基础 ng-init 指令简单示例
2016/08/02 Javascript
Bootstrap中点击按钮后变灰并显示加载中实例代码
2016/09/23 Javascript
canvas实现手机端用来上传用户头像的代码
2016/10/20 Javascript
javascript实现文字无缝滚动
2016/12/27 Javascript
原生JS+CSS实现炫酷重力模拟弹跳系统的登录页面
2017/11/01 Javascript
JS异步函数队列功能实例分析
2017/11/28 Javascript
细说webpack源码之compile流程-rules参数处理技巧(1)
2017/12/26 Javascript
vue v-for循环重复数据无法添加问题解决方法【加track-by='索引'】
2019/03/15 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
vue搜索页开发实例代码详解(热门搜索,历史搜索,淘宝接口演示)
2020/04/11 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
2020/11/12 Javascript
js实现缓动动画
2020/11/25 Javascript
[14:57]DOTA2 HEROS教学视频教你分分钟做大人-幽鬼
2014/06/13 DOTA
[50:01]Ti4 冒泡赛第二天 NEWBEE vs Titan
2014/07/15 DOTA
Python读写Excel文件方法介绍
2014/11/22 Python
对Python新手编程过程中如何规避一些常见问题的建议
2015/04/01 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
Python爬虫文件下载图文教程
2018/12/23 Python
python批量解压zip文件的方法
2019/08/20 Python
Pytorch在NLP中的简单应用详解
2020/01/08 Python
django model通过字典更新数据实例
2020/04/01 Python
解决Django响应JsonResponse返回json格式数据报错问题
2020/08/09 Python
环境科学专业研究生求职信
2013/10/02 职场文书
自主招生自荐信
2013/12/08 职场文书
干部培训自我鉴定
2014/01/22 职场文书
仙境之桥观后感
2015/06/16 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
创业计划书之青年旅馆
2019/09/23 职场文书
端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
2021/06/11 Python