JavaScript--漏寫var卻還能使用標籤

來源:互聯網
上載者:User

標籤:size   cti   儲存   click   div   擷取對象   name   標準   nbsp   

一個漏寫var帶來的問題:

這個是不標準的寫法!不建議使用

但是效果還是出來了,為什麼呢?

原因:

https://zhidao.baidu.com/question/1637589020484843580.html

為什麼可以通過id直接存取對象,是因為所有的元素ID都相當於一個儲存對象的全域變數。

通過id直接存取對象還存在相容問題。

建議用document.getElementById標準的形式擷取對象。

如果一個元素符合下面兩條規則中的任一條,則window對象中必須要有與之對應的一個屬性,屬性值就是這個對象。

如果一個元素擁有ID屬性,那麼ID屬性的屬性值就會成為window對象的屬性名稱. 如果一個元素擁有name屬性,那麼name屬性的屬性值就會成為window對象的屬性名稱.但這個元素的標籤名必須是: a, applet, area, embed, form, frame, frameset, iframe, img, object,其中的一個。

 但是如果網頁有兩個相同ID的元素,就有點差異了:

 1 <html> 2 <head> 3     <script type="text/javascript"> 4         function getInput() { 5             var mydiv = document.getElementById("div1"); 6             alert(mydiv.length);//mydiv是DispHTMLElement 7             alert(div1.length);//div1是DispHTMLElementCollection 8         } 9     </script>10 </head>11 <body>12     <div id="div1">123</div>13     <div id="div1">456</div>14     <input type="button" value="Test" onclick="getInput()" />15 </body>16 </html>

 

JavaScript--漏寫var卻還能使用標籤

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.