zoukankan      html  css  js  c++  java
  • 事件委托(代理)

    事件委托:当我们需要对很多元素添加事件的时候,可以通过将事件添加到它们的父节点而将事件委托给父节点来触发处理函数。这主要得益于浏览器的事件冒泡机制。

    例如:

    <ul id="ul1">                                  var oUl = document.getElementById("ul1");

          <li>111</li>                             var aLi = oUl.getElementsByTagName('li');

          <li>222</li>                              for(var i=0;i<aLi.length;i++){

          <li>333</li>                                aLi[i].onclick = function(){

          <li>444</li>                                      alert(123);

    </ul>                                                 }

                                                      }

             

    备注:事件委托主要是为了减少DOM操作,4个li事件,每当for一次,点击一次就会查找一次oUl.getElementsByTagName();总共4次DOM操作+1次查找ulDOm操作

    如果将onclick事件委托于其父元素即<ul> ,则只需要1次Dom操作,从而大大优化性能。

    var oUl = document.getElementById("ul1");

    oUl.onclick = function(){

          alert(123);

        }

    当然其中ul也会触发自身的事件,我们可以使用event.target来进行对所点事件的绑定。

    优点:大大减少dom的操作

    具体详情请见:https://www.cnblogs.com/liugang-vip/p/5616484.html

  • 相关阅读:
    手把手教你如何安装Pycharm
    虚拟机的安装
    将BUG管理工具(禅道)部署到服务器(测试服务器、云服务器)
    XMind入门教程
    测试流程中的问题
    MySQL安装
    SDK?JDK?JDK 下载、安装、配置图文教程
    tomcat是什么?Tomcat 下载、安装、配置图文教程
    转:如何准备性能测试数据
    转:性能测试用例设计策略
  • 原文地址:https://www.cnblogs.com/8080zh/p/9224481.html
Copyright © 2011-2022 走看看