• 重要选择器querySelector和querySelectorAll


    他们的作用是根据 CSS 选择器规范,便捷定位文档中指定元素。

    目前几乎主流浏览器均支持了他们。包括 IE8(含) 以上版本、 Firefox、 Chrome、Safari、Opera。

    querySelector 和 querySelectorAll 在规范中定义了如下接口:

    从接口定义可以看到Document、DocumentFragment、Element都实现了NodeSelector接口。即这三种类型的元素都拥有者两个方法。querySelector和querySelectorAll的参数须是符合 css selector 的字符串。不同的是querySelector返回的是一个对象,querySelectorAll返回的一个集合(NodeList)。

    获取页面I属性D为test的元素:

    1. document.getElementById("test");
    2. //or
    3. document.querySelector("#test");
    4. document.querySelectorAll("#test")[0];

    获取页面class属性为”red”的元素:

    1. document.getElementsByClassName('red')
    2. //or
    3. document.querySelector('.red')
    4. //or
    5. document.querySelectorAll('.red')

    Element.querySelector和Element.querySelectorAll和jQuery(element).find(selector)选择器的区别:

    <!DOCTYPE html>
    <html>
    <head>
        <title>querySelector,querySelectorAll</title>
        <meta charset="utf-8">
        <script src="http://r.aicaicdn.com/js/public/jquery.min.js" type="text/javascript"></script>
    </head>
    <body>
        <div id="test1">
            <span>设计蜂巢1</span>
            <span>设计蜂巢2</span>
            <span>设计蜂巢3</span>
        </div>
        <p id="bar">111</p>
    </body>
    </html>
    
    <script>
        var d1 = document.getElementById('test1'),
        obj1 = d1.querySelector('span'),
        obj2 = d1.querySelectorAll('span');
        obj3 = $("#test1").find('span');
        console.log(obj1)//返回一个对象,如<span>设计蜂巢1</span>
        console.log(obj2);//返回一个集合或数组,如[span, span, span]
        console.log(obj2.length)//1
        console.log(obj3)//[span, span, span, prevObject: b.fn.b.init[1], context: document, selector: "#test1 span"]
    </script>
  • 相关阅读:
    提问的智慧
    Linux下Tomcat的安装配置
    Advanced Puppet 系列的前言
    一个purge参数引发的惨案——从线上hbase数据被删事故说起
    从入门到精通Puppet的实践之路
    Juno Puppet Opertaors Meetup小结
    Openstack配置文件管理的变迁之路
    如何成为一名Top DevOps Engineer
    mod_wsgi的工作模式和配置
    解决PuppetDB Failed to submit 'replace facts'问题
  • 原文地址:https://www.cnblogs.com/wdlhao/p/5499931.html
Copyright © 2020-2023  润新知