事件委托
2016-12-16 00:00
323 查看
事件委托:利用事件冒泡的原理,把事件添加到父级身上,触发执行效果
好处:
1:提高性能。
2:新添加的元素,还会有之前的事件。
实例:
好处:
1:提高性能。
2:新添加的元素,还会有之前的事件。
实例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script> window.onload = function(){ var oUl = document.getElementById('ul1'); var aLi = oUl.getElementsByTagName('li'); var oInput = document.getElementById('input1'); var iNow = 4; /*for(var i=0;i<aLi.length;i++){ aLi[i].onmouseover = function(){ this.style.background = 'red'; }; aLi[i].onmouseout = function(){ this.style.background = ''; }; }*/ oUl.onmouseover = function(ev){ var ev = ev || window.event; var target = ev.target || ev.srcElement; if(target.nodeName.toLowerCase() == 'li'){ target.style.background = 'red'; } }; oUl.onmouseout = function(ev){ var ev = ev || window.event; var target = ev.target || ev.srcElement; if(target.nodeName.toLowerCase() == 'li'){ target.style.background = ''; } }; oInput.onclick = function(){ iNow++; var oLi = document.createElement('li'); oLi.innerHTML = 1111 * iNow; oUl.appendChild(oLi); }; }; </script> </head> <body> <input type="button" value="添加" id="input1" /> <ul id="ul1"> <li>111</li> <li>222</li> <li>333</li> <li>444</li> </ul> </body> </html>
相关文章推荐
- centos6.2下搭建Web服务器
- 正则版----getByClass函数
- js上传图片并预览
- JS当前日期相加相减
- 100个直接可以拿来用的JavaScript实用功能代码片段
- @Autowired @Resource @Inject的区别
- HDU 5713 K个联通块【状压计数dp……补集转化?
- myeclipse tomcat的启动缓慢问题----一次会加载多个项目
- 内存介绍 - 继承
- java--Struts2入门示例教程(五)
- Java中Date插入数据库的一些问题总结(二)
- Java中数组的问题(三)
- 浏览器--如何让登陆页面的表单不默认显示账号和密码
- JS切换卡效果
- java项目HTTP Status 404(The requested resource is not avail)的问题
- Java 关于Ajax的实例--验证用户名(四)
- (四)基于myeclipse的RocketMQ--Demo实践
- Java中类与方法的学习笔记(一):
- 由数组随机化排序引出的对于js中sort()方法的理解分析
- JavaEE--prepareStatement后面的setString()方法是为何?