• 实现一个 $attr(name,value) 遍历;属性为 name 值为 value 的元素集合


    <body>
      <div class="box clearfix"></div>
      <div name="zs"></div>
      <div class="box"></div>
      <div name="ls"></div>
      <div class="attr"></div>
      <div class="box2"></div>
      <div class="box A"></div>
    </body>
     
    --------------------------------------------------------------------------------------------------------------------------------------
     
    function $attr(property, value) {
      // 获取当前页面中所有的标签
      let elements = document.getElementsByTagName('*'),
        arr = [];
      elements = Array.from(elements); // => 把非数组转换为数组
      elements.forEach(item => {
        // => 储存的是当前元素 property 对应的属性值
        let itemValue = item.getAttribute(property);
        if (property === 'class') {
          // => 样式类属性名要特殊处理
          new RegExp("\b" + value + "\b").test(itemValue) ? arr.push(item) : null;
          return;
        }
        if (itemValue === value) {
          // => 获取的值和传递的值校验成功
          arr.push(item);
        }
      });
    return arr;
    }
    console.log($attr('class', 'box'));
  • 相关阅读:
    Hadoop启动报Error: JAVA_HOME is not set and could not be found
    mrjob在hadoop上跑的时候,报错
    Hadoop3安装踩坑 there is no HDFS_NAMENODE_USER defined. Aborting operation.
    mrjob 运行报错
    站位

    Lua基本数据类型
    常量指针和指针常量
    C基础题
    C++拷贝构造函数(深拷贝,浅拷贝)
  • 原文地址:https://www.cnblogs.com/HYTing/p/12616816.html
Copyright © 2020-2023  润新知