1. 程式人生 > >Jquery | 基礎 | 慕課網 | (*選擇器)

Jquery | 基礎 | 慕課網 | (*選擇器)

器) com lib meta margin jquer text nbsp itl

原生JS

var elements1 = document.getElementsByTagName(‘*‘);

JQ

 var elements2 = $("*");

  

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <title></title>
    <style>
    div {
        width: 100px;
        height: 90px;
        float: left;
        padding: 5px;
        margin: 5px;
        background-color: #EEEEEE;
    }
    </style>
    <script src="https://www.imooc.com/static/lib/jquery/1.9.1/jquery.js"></script>
</head>
<body>
    <div class="aaron">
        <p>class="aaron"</p>
        <p>選中</p>
    </div>
    <div class="aaron">
        <p>class="aaron"</p>
        <p>選中</p>
    </div>
    <div class="imooc">
        <p>class="imooc"</p>
        <p>jQuery選中</p>
    </div>
    <div class="imooc">
        <p>class="imooc"</p>
        <p>jQuery選中</p>
    </div>

    <script type="text/javascript">
        //獲取頁面中所有的元素
        var elements1 = document.getElementsByTagName(‘*‘);
    </script>
    <script type="text/javascript">
        //獲取頁面中所有的元素
        var elements2 = $("*");
        //原生與jQuery方法比較
        //===表示數據和類型都相等
        if(elements2.length === elements1.length){
           elements2.css("border","1px solid red");
        }
    </script>
</body>

</html>

  

兼容性問題:

  1. IE會將註釋節點實現為元素,所以在IE中調用getElementsByTagName裏面會包含註釋節點,這個通常是不應該的
  2. getElementById的參數在IE8及較低的版本不區分大小寫
  3. IE7及較低的版本中,表單元素中,如果表單A的name屬性名用了另一個元素B的ID名並且A在B之前,那麽getElementById會選中A
  4. IE8及較低的版本,瀏覽器不支持getElementsByClassName

Jquery | 基礎 | 慕課網 | (*選擇器)