why window[id] === document.getElementById( id )

why window[id] === document.getElementById( id )

本文关键字:id getElementById document window why      更新时间:2023-09-26

我注意到在一些浏览器中,dom元素可以简单地通过它们的id访问,像这样:

<div id="chocolat"></div>

JS

alert(chocolat.id); //alerts "chocolat
chocolat; //points to the node
window.chocolat; //idem
chocolat === document.getElementById('chocolat'); // true

(此处测试:http://jsfiddle.net/GUUPT/)这将在某些版本的IE, Chrome上工作,但它不会在Firefox(5)。

我很好奇这是怎么来的?它在标准里吗?

  • 非标准
  • 它是由Internet Explorer (version 4 IIRC)启动的
  • IIRC,如果你使用的是最新版本的IE
  • ,它只在Quirks模式下工作