我有一个包含svg标签的页面。页面上有一个名为“预览”的按钮,点击后应该打开一个新窗口显示图像(svg)。
下面是一段代码,在Chrome / Firefox中起作用,但在IE中不起作用(我使用的是IE 9- IE9标准模式)
var w = window.open();
var svg = $('#chart');
var svgPrint = svg.cloneNode(true);
svgPrint.setAttribute('xmlns','http://www.w3.org/2000/svg');
w.document.body.appendChild(svgPrint);
任何建议都将不胜感激。谢谢。
about:blank
在怪异模式下运行,不支持svg
。 - Teemuwindow
更有可能以怪异模式运行,因为它没有doctype声明...只需通过在其中打开一个真实文档来进行测试。 - Teemutry..catch
没有任何关系?!同时,在新打开的窗口中加载真实页面也无法消除此错误。设置w.document.body.innerHTML = '...'
似乎可以解决问题。当将appendChild()
包含在try..catch
中时,错误消息是HierarchyRequestError
,这意味着“节点无法插入到请求的位置”。这在 IE 中似乎是一个大 bug... - Teemu