zoukankan      html  css  js  c++  java
  • js循环添加事件

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
        <ul>
          <li>香蕉</li>
          <li>苹果</li>
            <li>菠萝</li>
          <li>猕猴桃</li>
          <li>芒果</li>
        </ul>
    </body>
    </html>
    <script type="text/javascript" src="http://cdn.bootcss.com/jquery/3.1.1/jquery.js"></script>
    <script type="text/javascript">
        var itemli = document.getElementsByTagName("li");
    //方法一:
    //    for(var i =0;i<itemli.length;i++){
    //        itemli[i].index = i;
    //        itemli[i].onclick = function () {
    //            console.log(this.index+this.innerHTML);
    //        }
    //    }
    
    //    方法二:
    //    for(var i = 0; i<itemli.length; i++){
    //
    //        (function(n){
    //
    //            itemli[i].onclick = function(){
    //
    //                console.log(n+itemli[n].innerHTML);    //   索引值从0开始
    //
    //            }
    //
    //        })(i)
    //
    //    }
    
    //    方法三:
    //    for(var i = 0; i<itemli.length; i++){
    //        itemli[i].onclick = function(n){
    //            return function(){
    //                console.log(n+itemli[n].innerHTML);    //  
    换行   索引值从0开始
    //            }
    //        }(i)
    //    }
    
    //    方法四:
        $("ul li").click(function () {
            var item = $(this).index();
            var textword = $(this).text();
            console.log(item+textword);
        })
    </script>

     2.考虑到如果li是动态的添加;

    可以把事件绑定在ul上,多次的事件不用在每个li绑定,而是用on一次绑定在ul上,提高了性能;

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script type="text/javascript" src="http://cdn.bootcss.com/jquery/3.1.1/jquery.js"></script>
    </head>
    <body>
    <ul>
        <li>item1</li>
        <li>item2</li>
        <li>item3</li>
        <li>item4</li>
        <li>item5</li>
        <li>item6</li>
    </ul>
    </body>
    </html>
    <script type="text/javascript">
        $("ul").on("mouseover",function(e){
            $(e.target).css("background-color","#ddd").siblings().css("background-color","white");
        });
    </script>
  • 相关阅读:
    Lock
    synchronized
    线程可见性与原子性
    线程安全问题
    MySQL索引背后的数据结构和原理
    求一颗二叉树中两个节点的最低公共父节点
    Session not active, could not store state 的解决方法
    https nginx 设置
    第三方支付系统
    facebook页面种简单测试js调用flash开放的js接口的方法
  • 原文地址:https://www.cnblogs.com/wang715100018066/p/6108507.html
Copyright © 2011-2022 走看看