研究一个简单的HTMLElement包装器的想法我偶然发现了Internet Explorer和Chrome的以下内容:
对于DOM树中具有ID的给定HTMLElement,可以使用其ID作为变量名来检索div.所以对于一个喜欢的div
<div id="example">some text</div>
Run Code Online (Sandbox Code Playgroud)
在Internet Explorer 8和Chrome中,您可以执行以下操作:
alert(example.innerHTML); //=> 'some text'
Run Code Online (Sandbox Code Playgroud)
要么
alert(window['example'].innerHTML); //=> 'some text'
Run Code Online (Sandbox Code Playgroud)
那么,这是否意味着DOM树中的每个元素都转换为全局命名空间中的变量?它是否也意味着可以使用它作为getElementById这些浏览器中方法的替代品?
这个问题可能看起来很愚蠢,但是使用document.getElementById("someId")Vs访问元素(使用id"someId")之间的区别是什么.只是输入someId?
例如:
document.getElementById("someId").style.top = "12px";
Run Code Online (Sandbox Code Playgroud)
VS
someId.style.top = "12px";
Run Code Online (Sandbox Code Playgroud)
这是一个示例代码http://jsfiddle.net/pRaTA/(我发现它在firefox中不起作用)