javascript - Internet Explorer Javascript 的 AppendChild 问题

标签 javascript internet-explorer html internet-explorer-8 appendchild

下面这段代码,在 Firefox 和 Chrome 中可以正常运行,但在 IE 中却让我头疼。

var anotherDiv= document.getElementById("anotherDiv");
var destination = document.getElementById("mySourceDiv");    
destination.appendChild(anotherDiv);

我正在尝试获取一个 Div 元素并将其放在另一个 div 中。 我收到类似于“不支持接口(interface)”的错误消息(在 IE 的调试控制台中),并将我指向 appendChild 行。 我所看到的是目标变量的类型是对象而不是 DOM 元素。

如何将 anotherDiv 附加到 mySourceDiv? 我正在 IE 8 中尝试这个。

最佳答案

您可能需要像 importNode 这样的东西,周围有各种跨浏览器解决方案。问题是每个节点上都有一个对应的文档对象,在 IE 中,所谓的安全性不能很好地将内容从一个文档移动到另一个文档。

所以,本质上它是在进行深度克隆,但是使用 cloneNode 的区别在于 cloneNode 还会设置您不需要的文档。

这可能会让您朝着正确的方向前进: IE support for DOM importNode

关于javascript - Internet Explorer Javascript 的 AppendChild 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8094819/

相关文章:

javascript - 需要使用 JavaScript 循环 JSON 的帮助。奇怪的行为

css - IE8 中的样式相关问题

internet-explorer - ie8 标准兼容模式下的 css box-sizing

php - 根据 codeigniter 中数据库中选择的其他下拉菜单选项填充下拉菜单

javascript - 在 Twitter typeahead.js 中取消待处理的猎犬请求

javascript - 输入有效时 qTip2 验证不会消失

javascript - 什么函数被放入 Node Js 和 JS 的事件循环中

linux - 使用安装在 Linux 机器上的 Jenkins 在 IE 驱动程序上运行测试

php - 无法使用 AJAX 发送 POST 值

html - 如何阻止 Foundation 的 `.columns` 类添加破坏移动优化的填充?