JavaScript事件委托
来源:互联网 发布:阿里 开发的数据库 编辑:程序博客网 时间:2024/05/29 11:54
实现功能:分别点击重点内容三个列表项,触发各自的click事件。
- 使用事件委托方式实现:针对三个列表项,只需在DOM树中尽量最高的层次添加一个事件处理程序。这里就是对 ul 添加了click事件。
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript" src="EventUtil.js" ></script> </head> <body> <ul id="myLinks"> <li id="goSomewhere">Go somewhere</li> <li id="doSomething">Do something</li> <li id="sayHi">Say hi</li> </ul><script type="text/javascript"> (function(){ var list = document.getElementById("myLinks"); EventUtil.addHandler(list,"click",function(event){ event = EventUtil.getEvent(event); var target = EventUtil.getTarget(event); switch (target.id){ case "doSomething": document.title = "I changed the document's title"; break; case "goSomewhere": location.href = "http://www.baidu.com"; break; case "sayHi": alert("hi"); break; default: break; } }); })();</script> </body></html>
- 按照传统做法会很复杂,需要针对每个列表项分别设置 click 事件。代码如下:
var item1 = document.getElementById("goSomewhere");var item2 = document.getElementById("doSomething");var item3 = document.getElementById("sayHi");EventUtil.addHandler(item1, "click", function(event){location.href = "http://www.wrox.com";});EventUtil.addHandler(item2, "click", function(event){document.title = "I changed the document's title";});EventUtil.addHandler(item3, "click", function(event){alert("hi");});
0 0
- JavaScript中的事件委托
- javascript--事件委托
- JavaScript 事件委托
- JavaScript中的事件委托
- javascript --- 事件委托
- JavaScript 事件委托
- javascript事件委托(冒泡)
- 【javascript】js事件委托
- JavaScript中的事件委托
- JavaScript中的事件委托
- JavaScript事件委托
- JavaScript 事件委托
- 简述javascript事件委托
- JavaScript事件委托
- Javascript事件委托
- Javascript—事件委托
- JavaScript-事件委托
- JavaScript事件委托
- c语言MP3播放器
- will not be managed by Spring 和was not registered for synchronization because synchronization is n
- history.back(-1)和history.go(-1)的区别
- curl模拟post请求提交
- HDOJ 1241 Oil Deposits(DFS)
- JavaScript事件委托
- SSH开发银联在线支付
- Java中单例模式的实现
- Android 进阶之Activity生命周期与启动模式
- mysql 修改root密码 修改账户登录host
- Mac环境下R链接MySQL数据库流程记录
- jquery-zclip插件
- HDU 5750 Dertouzos
- 机器学习方法的历史