zoukankan      html  css  js  c++  java
  • 关于delegate事件委托怎么用



    给每个li添加点击事件,每次点击都要循环遍历一遍,如果有很多li 就会影响性能。

    先来看看普通函数怎么实现点击事件
    <div class="box">
    <ul>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    </ul>
    </div>
    <input class='btn' type="button" value="点击添加">
    //普通的点击事件
    $(function(){
    $("li").click(function(){
    $(this).css('background','red')
    });
    });
    // delegate 事件委托:
    $(function(){
    $('ul').delegate("li",'click',function(ev){
    $(this).css('background','red')
    //这里的this 只的是li,那怎么找到ul呢?
    $(ev.delegateTarget).css('background','green')//这个可以找到委托人ul
    //那取消委托呢?
    $($(ev.delegateTarget)).undelegate("click")
    });
    })
    // delegate 事件委托:事件委托的有点1.提高性能 2.后面追加的元素也带有相同的事件
    $(function(){
    $('ul').delegate("li",'click',function(ev){
    $(this).css('background','red')
    //这里的this 只的是li,那怎么找到ul呢?
    $(ev.delegateTarget).css('background','green')//这个可以找到委托人ul
    //那取消委托呢?
    $($(ev.delegateTarget)).undelegate("click")
    });
    $(".btn").on("click",function(){
    $(".box ul").append("<li>追加进来的</li>")
    console.log($(".box ul"))
    })
    })

  • 相关阅读:
    更改THttpClientSocket连接超时时间
    咏南跨平台中间件REST API
    INDY10 BASE64编码
    HTTP协议之multipart/form-data
    WWF3动态修改工作流<第九篇>
    WWF3自定义活动<第八篇>
    WWF3追踪功能<WWF第六篇>
    WWF3状态机工作流<WWF第七篇>
    WWF3的持续化<第五篇>
    WWF3事务和异常处理类型活动<第四篇>
  • 原文地址:https://www.cnblogs.com/hilxj/p/11113847.html
Copyright © 2011-2022 走看看