【发布时间】:2013-08-13 08:17:12
【问题描述】:
作为一名学生和 Web 开发的新手,我在 Javascript 中遇到了以下看似奇怪的问题 - 但仅限于 IE(确切地说是 IE9;尚未尝试 IE10)。在 Firefox 中,该脚本可以正常工作。
代码是这样的:
item = document.createElement('li'); alert("alert1");
message = document.createTextNode("Hallo"); alert("alert2");
item.appendChild(message); alert("alert3");
在 IE 中,会显示 alert1 和 alert2,但不会显示 alert3。换句话说,IE9 在上面的第三个语句(appendChild)上阻塞,并且永远不会到达 alert3。确实很奇怪。
使用 Google,我发现 IE 中的 appendChild 存在已知问题(至少在早期版本中)。但是,如上所述,所描述的问题或建议的解决方法似乎都与我的简单代码不匹配。
提前感谢您的任何建议。
编辑添加:控制台给出以下错误消息:“对象不支持属性或方法 appendChild”。
【问题讨论】:
-
IE 旨在让它变得困难和烦人。尝试设置 li 的 innerHTML。
-
我无法用一个简单的小提琴重现这个问题(在 IE9 中测试):jsfiddle.net/RnwPG
-
@Teemu 很有趣。我仍然希望上面的
item = docu...行覆盖window.item的任何内容
标签: javascript appendchild textnode