我刚刚在浏览器中偶然发现了一个意想不到但有用的行为:它为我的 html 代码中具有 ID 的每个元素创建了一个变量。所以当我有:
<div id="ohlala"> ... </div>
浏览器似乎在幕后运行此代码:
var ohlala = document.getElementById("ohlala");
所以我可以通过以下方式轻松更改该元素的文本:
ohlala.innerHTML="test"
在线尝试:http: //jsfiddle.net/Facby/
问题是:为什么我需要自己编写document.getElementById()
代码?该代码的可移植性如何?我在 Opera、FireFox 和 Chrome 中尝试过,它可以工作!我可以依赖这个功能吗?浏览器是否总是为每个具有 id 的元素创建变量?在这种情况下,我必须更加小心我的 javascript 代码中使用的名称,以免与 HTML 中的类似 id 冲突,对吧?