【发布时间】:2010-10-26 21:53:39
【问题描述】:
IE 不允许写入 style 或 head 元素的 innerHTML 属性。那么如何将样式元素从一个文档的头部复制到另一个文档呢?
【问题讨论】:
标签: javascript internet-explorer dom
IE 不允许写入 style 或 head 元素的 innerHTML 属性。那么如何将样式元素从一个文档的头部复制到另一个文档呢?
【问题讨论】:
标签: javascript internet-explorer dom
function copy_style(src_style_tag) {
var tmp_div = document.createElement('div');
var innerHTML = src_style_tag.innerHTML;
tmp_div.innerHTML = '<p>x</p><style type="text/css">' + innerHTML + '</style>';
return tmp_div.getElementsByTagName('style')[0];
}
神奇的是您需要tmp_div 的innerHTML 中的<p> 标记。没有它,IE 不接受 style 元素。
【讨论】:
如果你想复制一些元素,不如试试Node.cloneNode(true)和Node.appendChild一起使用
【讨论】: