首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >克隆()没有工作的互联网浏览器8

克隆()没有工作的互联网浏览器8
EN

Stack Overflow用户
提问于 2012-10-02 07:24:45
回答 2查看 6.6K关注 0票数 2

我有这样的代码:

代码语言:javascript
复制
openPopup.hide();

var substr = popupId.split('-');                        
var clone = $("#popup"+substr[1]).clone(true);

$("#popup"+substr[1]).remove();
$(openPopup).html(clone);
$.dimScreenStop();

它在IE7,IE9,Chrome,Firefox中运行得很好。

我已经将问题跟踪到"var clone =$(“#popup”+substr1 1).clone(True);“行。这是通过在所有行之间添加“警告(”Test“);”在该行之后(在IE8中),它不会输出警报。

奇怪的是,jquery文件(只是在IE8中没有其他浏览器或浏览器版本)出现了错误:

SCRIPT5007:无法获得属性'nodeType':object为null或未定义的jquery.min.js?ver=3.4.1的值,第2行字符为4426

EN

回答 2

Stack Overflow用户

发布于 2012-10-02 07:39:37

您可以调用javascript DOM ()方法,而不是jQuery的克隆()。关于MDN的更多信息

例子:

代码语言:javascript
复制
var clone = $("#node").get(0).cloneNode(true);
var $clone = $(clone); // JQUERY object

$('#copy').empty().html($clone.html());​

===> Demo

票数 5
EN

Stack Overflow用户

发布于 2012-10-02 07:34:29

.clone()为您提供一个jQuery扩展元素,而不是HTML 。尽管.html()能够接受jQuery对象,但这并不是它最初的目的。

作为一种解决方案,尝试使用$(openPopup).empty().append(clone);而不是$(openPopup).html(clone);

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12686055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档