IE部分版本JS获取ID不区分大小写

Other 2012-08-31 JavaScript,ie

昨天做一个js与flash交互项目,在其它浏览器都正常运行,唯独IE6、IE7、部分的版本IE8报错。查了很久代码,也未发现是哪里的问题。于是开始逐行try...catch,结果在window.document.video这一句报错了。

IE不区分大小写导致

video是flash的ID,为什么其它浏览器不报错,偏偏这里报错呢?经查,发现页面也有一个div标签,id为Video,难道是大小写的问题?于是把页面div标签id改为videodiv,问题解决。

做DEMO验证

难道IE对标签属性值不区分大小写吗?于是我自己做了一个测试。

在页面中有两个div,标签分别是小写qttc与大写QTTC。

然后使用 doument.getElementById去查找。

HTML部分代码

<div style="border:1px solid #999; padding:10px;margin:10px; width:450px;">
	<div id="qttc">这里是id=qttc的div</div>
</div>

<div style="border:1px solid #999; padding:10px;margin:10px; width:450px;">
	<div id="QTTC">这里是id=QTTC的div</div>
</div>

<div style="border:1px solid #999; padding:10px;margin:10px; width:450px;" id="result1">
	<h3>JS搜索 document.getElementById('qttc') 结果:</h3>
</div>

<div style="border:1px solid #999; padding:10px;margin:10px; width:450px;" id="result2">
	<h3>JS搜索 document.getElementById('QTTC') 结果:</h3>
</div>

JS代码

document.getElementById('result1').innerHTML = document.getElementById('result1').innerHTML+'<span style="color:red">'+document.getElementById('qttc').innerHTML+'</span><br />';
document.getElementById('result2').innerHTML = document.getElementById('result2').innerHTML+'<span style="color:red">'+document.getElementById('QTTC').innerHTML+'</span><br />';

火狐执行结果,正确

IE不区分小写

谷歌chrome,正确

IE不区分大小写

Safari,正确

IE不区分大小写

IE6,不区分大小写

IE不区分大小写

IE9,正确

IE9区分大小写

IE7、IE8由于没有测试环境,但我估计IE7也是不区分大小写,而IE8低版本不区分。

 

文字链接:《IE部分版本JS获取ID不区分大小写

文章地址:http://www.qttc.net/201208200.html

除非标注,琼台博客所有博文均为原创,转载请加文字链接注明来源

乳名?小名?昵称?网名?均可

email,放心,我不会给你乱投广告的

想获得回访就把你的站点URL写上(没有留空)

[NOTICE]木要投放广告
[NOTICE]木要骂人,说不该说的话
[NOTICE]自由言论,但要遵纪守法

Comments 0

    Hi,你想第一个做沙发么?