假设getElementById
适用于每个浏览器是否安全?如果没有,哪些人支持/不支持?
答案 0 :(得分:12)
所有浏览器都支持这个,但我在IE6和7中遇到了一个问题(添加到@ Esailija的回答)
执行此操作:
<input type="text" name="address" id="address" value="5th Avenue" />
不要这样做:
<input type="text" name="full_address" id="address" value="5th Avenue" />
您应该这样做的原因是因为在Internet Explorer中,如果您尝试使用getElementById
定位元素,由于某种原因浏览器将搜索页面上某些元素的name属性,此外到了id。假设我们使用了错误的方法来编码名称和id值,下面的代码块将在IE7中获得完全相同的结果:
var fullAddress = document.getElementById("full_address");
alert(fullAddress.value);
var fullAddress = document.getElementById("address");
alert(fullAddress.value);
答案 1 :(得分:3)
所有当前浏览器都支持它。自DOM Level 1以来,它一直是DOM的一部分。因此,基本上每个支持文档对象模块的浏览器(从IE 5.5开始)都应该支持这种方法。
答案 2 :(得分:3)
嗯它的支持非常广泛但至少有两个我知道的错误(Both from jQuery source):
name
匹配id(Opera,IE ..版本未知)答案 3 :(得分:1)
由于您要求它的最低工作要求,我认为这意味着您可以期待它工作的最早的浏览器,请查看此页面:
http://www.quirksmode.org/dom/w3c_core.html
根据它,你在IE-8之前处于危险的境地(他们说“差不多”)并且在FireFox,Safari,Chrome和Opera方面都很好。