如何在 IE 中正确处理 XSL 转换并以文档片段形式获取结果
我需要使用 JavaScript 在浏览器中进行 XSL 转换。
当我在现代浏览器(例如 FF 或 Chrome)中执行此操作时,我可以执行以下操作:
var proc = new XSLTProcessor();
proc.importStylesheet(xslDoc);
return proc.transformToFragment(xmlDoc, targetDocument);
但使用 IE 我只能转换为新文档
var newDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.transformNodeToObject(xslDoc, newDoc);
return newDoc;
...或转换为文本
return xmlDoc.transformNode(xslDoc);
转换为文本会导致巨大的性能问题(我需要将结果附加到我当前文档的 DOM 树中),转换为新文档,最终导致采用/importNode。
有没有更好的方法在 IE 中进行 XSL 转换并进一步将结果附加到 DOM 树?
I need to do XSL transformation in the browser using JavaScript.
When i'm doing this in the modern browsers, such as FF or Chrome i can do something like this:
var proc = new XSLTProcessor();
proc.importStylesheet(xslDoc);
return proc.transformToFragment(xmlDoc, targetDocument);
But with IE i can only transform to a new document
var newDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.transformNodeToObject(xslDoc, newDoc);
return newDoc;
... or transform to text
return xmlDoc.transformNode(xslDoc);
Transforming to text leading to huge perfomace issues (i need to append the result to my current document's DOM tree), transforming to new doc leading to doing adopt/importNode at last.
Is there a better way of doing XSL transformation in IE with further appending result to a DOM tree?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只是一个想法...为什么不将此行添加到您的 xml 文件中:
如下所示: http:// /www.w3schools.com/xsl/xsl_transformation.asp
这将使浏览器进行转换,然后您将在要解析的 iframe 中加载此 xml ?
Just an idea ... why not add this line to your xml file :
like shown here : http://www.w3schools.com/xsl/xsl_transformation.asp
This would let the browser do the transformation and then you'll load this xml in a iframe that you would parse ?