zoukankan      html  css  js  c++  java
  • JavaScript 学习笔记— —事件委托

    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript">
    
    //事件委托:利用冒泡的原理,把事件加到父级上,触发执行效果
    //好处
    //1.提高性能
    //2.新添加的元素,还会有之前的事件
    
    //event对象:
    // 事件源:不管在那个事件中,只要你操作的那个元素就是事件源
    //ie : window.event.srcElement
    // 标准下 :event.target
    //nodeName : 找到当前元素的标签名
    
    window.onload=function(){
        var oBtn=document.getElementsByTagName("input")[0];    
        var oUl=document.getElementById("ul");
        iNow=5;
        // oBtn.onclick=function(ev){
        //     var oEvent=ev || event;
        //     if(oEvent.srcElement){
        //         alert(oEvent.srcElement.value);
        //     }else{
        //         alert(oEvent.target.value);
        //     }
        // }    
    
        oBtn.onclick=function()
        {
            iNow++;
            var oLi=document.createElement("li");
            oLi.innerHTML=iNow*11111111;
            oUl.appendChild(oLi);
    
        }
    
        oUl.onmouseover=function(ev)
        {
            var oEvent=ev || event;
            //alert(oEvent.srcElement.innerHTML)// IE CHROME
            //alert(oEvent.target.innerHTML)// FF
    
            var target=oEvent.srcElement || oEvent.target;
    
            if(target.nodeName.toLowerCase()=="li")
            {
                target.style.background="yellow";
            }
        }
    
        oUl.onmouseout=function(ev)
        {
            var oEvent=ev || event;
            //alert(oEvent.srcElement.innerHTML)// IE CHROME
            //alert(oEvent.target.innerHTML)// FF
    
            var target=oEvent.srcElement || oEvent.target;
    
            if(target.nodeName.toLowerCase()=="li")
            {
                target.style.background="";
            }
        }
    
    }
    </script>
    </head>
    <body>
        <input type="button" value="按钮"> 
        <ul id="ul">
            <li>11111111</li>
            <li>22222222</li>
            <li>33333333</li>
            <li>44444444</li>
            <li>55555555</li>
        </ul>
    </body>
    </html>
  • 相关阅读:
    C++ String详解
    乏力的编码很累,这里有私货..
    给自己~~微语&&歌单
    2019CSP-J第二轮 B题C题
    HDU 3966 树链剖分+树状数组 模板
    HDU 2255 KM算法 二分图最大权值匹配
    HDU 4280 ISAP+BFS 最大流 模板
    HDU 6181 第k短路
    假装会python--爬取贴吧正文
    HDU 6170 dp
  • 原文地址:https://www.cnblogs.com/eaysun/p/4396830.html
Copyright © 2011-2022 走看看