博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
复习事件委托
阅读量:4635 次
发布时间:2019-06-09

本文共 1828 字,大约阅读时间需要 6 分钟。

Css:

#click-wrap{
width: 900px;height: 30px;background: #fc0;}button{
display: inline-block;width: 180px;height: 30px;line-height: 30px;text-align: left;padding: 0 20px;cursor: pointer;}

HTML :

  

JS :

  var wrap = document.getElementById("click-wrap");    function addEvent(el, type, fn){        if(document.body.addEventListener){            addEvent = function(el, type, fn){                console.log(00)                el.addEventListener(type, fn, false);            };        }else{            addEvent = function(el, type, fn){                el.attachEvent("on" + type, function(){                    fn.apply(el, arguments);                });            };        }        addEvent(el, type, fn);    };    function myHandler(e){        console.log(11)        var src, parts;        // 获取事件和源元素        e = e || window.event;        src = e.target || e.srcElement;        if(src.nodeName.toLowerCase() !== "button"){            return;        }        // 实际工作:升级标签        parts = src.innerHTML.split(": ");        parts[1] = parseInt(parts[1], 10) + 1;        src.innerHTML = parts[0] + ": " + parts[1];        // 无冒泡        if(typeof e.stopPropagation === "function"){            e.stopPropagation();        }        if(typeof e.cancelBubble !== "undefined"){            e.cancelBubble = true;                    }        // 阻止默认操作        if(typeof e.preventDefault === "function"){            e.preventDefault();        }        if(typeof e.returnValue !== "undefined"){            e.returnValue = false;        }    }    addEvent(wrap, "click", myHandler);

 

 再次复习了事件委托,addEvent先写好了,也知道原理,但有个if else 我就直接写的return 导致后面的语句addEvent(el, type, fn)没有执行 0.0 好粗心

转载于:https://www.cnblogs.com/chuyu/p/3502322.html

你可能感兴趣的文章
第20章 使用LNMP架构部署动态网站环境
查看>>
meson 中调用shell script
查看>>
相关博客
查看>>
Servlet运行原理以及生命周期
查看>>
Linux学习之三-Linux系统的一些重要配置文件
查看>>
转 [JAVA] 使用 common-fileupload 实现文件上传
查看>>
十五天精通WCF——第三天 client如何知道server提供的功能清单
查看>>
构建之法阅读笔记04
查看>>
Python - selenium_WebDriver 鼠标键盘事件
查看>>
oracle创建DBLink连接
查看>>
spark+openfire即时通讯工具二次开发参考文档
查看>>
java.util.concurrent包API学习笔记
查看>>
从技术细节看美团的架构
查看>>
Odoo进销存业务学习笔记
查看>>
c++标准库 及 命名空间std
查看>>
【POJ1113】Wall(凸包)
查看>>
SD.Team颜色代码大全
查看>>
使用按钮控制HTML5背景音乐开关
查看>>
[spring-boot] 多环境配置
查看>>
mongodb插入数据获取本次插入的mongodb id
查看>>