找回密码
 注册

[JS] IE 6 7 8 document.getElementById() 返回 undefined 的解决方案

php 发表于 2014/4/3 11:40 | 显示全部楼层 |阅读模式
以下html代码,在IE 6 7 8 中,无法获取空元素,如果一个元素为空,document.getElementById()将返回null,换用document.getElementsByTagName('div')[0]也返回null,即便使用jQuery也是一样得到null的结果。提示is null or not an object 元素为空或不是对象。
  1. <div id="rs"></div>
  2. <script type="text/javascript">
  3.         var o=document.getElementById('rs');
  4.         alert(o);//null
  5.         o.innerHTML='<strong>Too strong</strong>';//IE 6 7 8: o is null or not an object (o为空或不是对象)
  6. </script>
复制代码
在Google Chrome/Firefox/Opera/Safari/IE9/IE10/IE11等其他浏览器中一切正常,要解决IE 6 7 8获取空元素返回null的问题,可以使用以下两种方法:
  • 将目标元素放置在<body>和</body>之间
  • 在元素之间写一些内容,比如&nbsp;,如上例,将<div id="rs"></div>改写为<div id="rs">&nbsp;</div>
这样就完美解决了 IE 6 7 8 无法获取空元素的问题。

手机版|轻松E站

轻松E站

快速回复 返回顶部 返回列表