gpt4 book ai didi

javascript - clonoNode() Dom 方法无法克隆给定的 Xml Doc 对象

转载 作者:行者123 更新时间:2023-11-28 06:36:30 26 4
gpt4 key购买 nike

当我尝试克隆 Xml 文档对象 Chrome 时,IE 表现正常,但 Safari 浏览器版本 5.1.7 返回 null,

以下是我的示例代码xml 字符串

var xmlStr="<tr> <td class="dsd">  </td><td class='name'></td></tr>"

var doc=getXmlDoc(xmlStr) (i.e getXmlDoc is my custom function which returns string to doc using DOM Parser)

funtion getXmlDoc(str)
{
parser = new DOMParser();
xmlDoc = parser.parseFromString(str,"text/xml");
return xmlDoc
}

doc-Document(converted Document)

d.cloneNode(true)-Returns null


When i try to clone Entire Document,unable to clone
But d.documentElement.cloneNode(true) works

但是当我尝试克隆根节点时,我可以。

此问题仅在 Safari 浏览器 5.1.7 中测试。

I am working on ExtJs Framework, where EXt.clone() also returns null

提前致谢,普拉文库马尔

最佳答案

由于 Safari 不会克隆整个文档,但它仍然克隆(支持) documentElement 。例如

var xmlStr="<tr> <td class="dsd">  </td><td class='name'></td></tr>";
//convert the above string into document
//funtion getXmlDoc(str)
{
parser = new DOMParser();
xmlDoc = parser.parseFromString(str,"text/xml");
return xmlDoc
}


var newDoc=getXmlDoc(str);
//after Converting str to newDoc
var copy=newDoc.cloneNode(true);//will return error
//Let see How to Done
var copy=getXmlDoc(getXmlStr(newDoc.documentElement.cloneNode(true)));

说明 CloneNode 方法克隆给定的元素,但我们需要克隆文档,因此,首先我们克隆元素并将它们转换为字符串,然后将它们转换为文档。

但是看起来消耗内存很少,无论如何,有人提供更好的解决方案。

关于javascript - clonoNode() Dom 方法无法克隆给定的 Xml Doc 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34237621/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com