zoukankan      html  css  js  c++  java
  • 判断多个节点自定义属性值是否一样

    考虑到页面可能引入jquery,也加了判断。 封装了一个dataAttr函数,需要传入两个参数。 第一个参数:装有节点的数组或者伪数组,来判断这些数组的某个自定义属性值是否一致。 第二个参数:自定义属性。 返回值:true || false 。

    上源码:  

    0 <!DOCTYPE html>
    1 <html lang="en">
    2 <head>
    3 <meta charset="UTF-8">
    4 <title>Document</title>
    5 </head>
    6 <body>
    7 <div data-xue="fh"></div>
    8 <div data-xue="fh"></div>
    9 <div data-xue="fh"></div>
    10 <div data-xue="fh"></div>
    11 <div data-xue="fh"></div>
    12 <div data-xue="fh"></div>
    13 <div data-xue="fh"></div>
    14 <p data-xue="fh"></p>
    15 <p data-xue="fh333"></p>
    16 <p data-xue="fh"></p>
    17 <span data-xue="fh"></span>
    18 <script src="../test/node_modules/jquery/dist/jquery.js"></script>
    19 <script>
    20 var div = document.querySelector('div'); 
    21 var p = document.querySelector('p'); 
    22 var span = document.querySelector('span'); 
    23 function dataAttr(arr,attr){
    24  
    25 var arrAttr = [],
    26 flag = true;
    27  
    28 [].forEach.call(arr,function(v,i){
    29 if(window.jQuery && v instanceof jQuery){
    30 console.log('jquey对象');
    31 v = v[0];
    32 }
    33 arrAttr.push(v.attributes[attr].nodeValue);
    34 });
    35  
    36  
    37 arrAttr.forEach(function(v,i){
    38 if(arrAttr[0] != v){
    39 flag = false;
    40 }
    41 })
    42  
    43 return flag;
    44 }
    45 console.log(dataAttr($('div'),"data-xue")); // true
    46 console.log(dataAttr($('p'),"data-xue")); // false
    47 console.log(dataAttr([div,p,span],"data-xue")); // true
    48  
    49 </script>
    50 </body>
    51 </html>
  • 相关阅读:
    Lambda表达式
    工具类:mybatis中使用Threadlocal开启session及关闭session
    构造函数
    window phone ListBox多选
    ZOJ 3681 ZJU2013年01月月赛F题 E Cup 2
    2012百度之星冬季赛第四场第二题 度熊的复仇
    HDU 4476 HDOJ Cut the rope
    HDU 4475 HDOJ Downward paths
    2012百度之星冬季赛第二场第二题 消去游戏I
    ZOJ 3684 ZJU2013年01月月赛I题 Destroy
  • 原文地址:https://www.cnblogs.com/webhb/p/5755626.html
Copyright © 2011-2022 走看看