• JavaScript基础学习--05自定义属性、索引值


    一、自定义属性
         1、读写操作
    <input abc="123" type="button" value="按钮" />
    =========================================================
    //读写:
    var aBtn = document.getElementsByTagName('input');
    aBtn[0].abc = '456';
     
         2、js可以为任何HTML元素添加任意个自定义属性
         
         3、自定义属性可以作为判断的依据,相对于用class后者flag变量判断,优点:
              3.1     有时候不允许操作class时,可以利用自定义属性,通过判断自定义属性的值,从而操作流程
              3.2     一个flag变量只能判断一组对象,当对象在循环中有多组对象时,只能用class 或者 自定义属性
     
         4、for循环里面的i
     
    1 for(var i = 0; i < aLi.length; i++) {
    2      i     //这里的 i 是0、1、2……
    3      aLi[i].onclick = function() {
    4           i     //这里的 i 涉及到闭包和作用域问题,不能返回1、2、…… 只能返回aLi.length
    5      }
    6 }
     
         5、自定义索引
    1 for(var i = 0; i < aLi.length; i++) {
    2      aLi[i].index = i;     //给每个li添加自定义属性index,值为i,模拟成为索引
    3      aLi[i].onclick = function() {
    4           i     //这里的 i 涉及到闭包和作用域问题,不能返回1、2、…… 只能返回aLi.length
    5      }
    6 }
     
              5.1     自定义索引的应用
     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     5 <title>无标题文档</title>
     6 <script>
     7 window.onload = function (){
     8     var aBtn = document.getElementsByTagName('input');
     9     var aP = document.getElementsByTagName('p');
    10  
    11     // 想建立“匹配”“对应”关系,就用索引值
    12     var arr = [ '莫涛', '张森', '杜鹏' ];
    13  
    14     for( var i=0; i<aBtn.length; i++ ){
    15  
    16         aBtn[i].index = i;            // 自定义属性(索引值)
    17  
    18         aBtn[i].onclick = function (){
    19             // alert( arr[ this.index ] );
    20             this.value = arr[ this.index ];
    21  
    22             aP[ this.index ].innerHTML = arr[ this.index ];
    23         };
    24     }
    25 };
    26 </script>
    27 </head>
    28  
    29 <body>
    30  
    31 <input type="button" value="btn1" />
    32 <input type="button" value="btn2" />
    33 <input type="button" value="btn3" />
    34 <p>a</p>
    35 <p>b</p>
    36 <p>c</p>
    37  
    38 </body>
    39 </html>
     
     
     
     
     
     
  • 相关阅读:
    windows补丁更新列表
    centos7网卡配置vlan
    exp备份工具使用说明
    windows系统SSL/TLS漏洞修复
    CDH平台:ZooKeeper 未授权访问【原理扫描】漏洞修复
    MySQL升级至5.7.35问题处理过程
    10fb does not support flow control autoneg问题处理
    vCenter异常日志:pg_tblspc找不到数据文件
    tcpdump命令
    排序算法总结
  • 原文地址:https://www.cnblogs.com/hihao/p/7344630.html
Copyright © 2020-2023  润新知