是否始终可以从窗口对象获取html元素的ID?

Zo7*_*o72 8 html javascript

我注意到以下几点:

<div id='myDiv'>...</div>

<script>
    myDiv.style.color = 'red'; // I can access the object.
<script>
Run Code Online (Sandbox Code Playgroud)

在实现这一点之前,我总是使用以下内容:

var x = document.getElementById('myDiv'); 
x.style.color = 'red';
Run Code Online (Sandbox Code Playgroud)

我很迷惑.第二种方法有什么意义?第一种方法总是有效吗?

Que*_*tin 7

窗口对象中的 html 元素的 ID 是否始终可用?

不可以。出于兼容性原因,其他一些浏览器采用了非标准的 Microsoft 主义。它容易发生命名空间冲突,并且不完全跨浏览器兼容:不要这样做。

第二种方法的重点是什么?

它是标准的、支持良好的跨浏览器(以及跨语言)。

  • [HTML5 将此行为添加到标准中。](http://www.w3.org/html/wg/drafts/html/master/browsers.html#named-access-on-the-window-object) (3认同)