zoukankan      html  css  js  c++  java
  • 事件委托

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    
    <body>
        <ul>
            <li class="item">按钮</li>
            <li class="item">按钮</li>
            <li class="item">按钮</li>
            <li class="item">按钮</li>
        </ul>
    </body>
    <script>
        // 不使用事件委托,那就要遍历每一个li元素,给每个li元素绑定一个点击事件,
        //这样的做法非常耗费内存,如果有100个、1000个li元素,那对性能的影响是非常大的。
        window.onload = function () {
            let lis = document.getElementsByClassName('item')
            for (let i = 0; i < lis.length; i++) {
                lis[i].onclick = function () {
                    console.log('用力的点我')
                }
            }
        }
    </script>
    
    </html>
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    
    <body>
        <ul id="wrap">
            <li class="item">按钮</li>
            <li class="item">按钮</li>
            <li class="item">按钮</li>
            <li class="item">按钮</li>
        </ul>
    </body>
    <script>
        window.onload = function () {
            let ul = document.getElementById('wrap')
            ul.onclick = function (ev) {
                // 获取到事件对象
                let e = ev || window.event
                console.log(ev, window.event);
                // 如果点击的元素的calssName为item
                if (e.target.className === 'item') {
                    console.log('用力的点我')
                }
            }
        }
    </script>
    
    </html>
  • 相关阅读:
    37.1 net-- udp传输
    37 net 网络编程
    review
    java day02 记录
    36.2 线程生命周期
    36.1 线程锁
    36 Thread 多线程
    35 编码 ASCII Unicode UTF-8 ,字符串的编码、io流的编码
    34.6 Properties(k,v存储) 和io流结合使用
    今日学习总结
  • 原文地址:https://www.cnblogs.com/w-y-1/p/13182674.html
Copyright © 2011-2022 走看看