Javascript 如何在IE中复制内联样式元素?

Javascript 如何在IE中复制内联样式元素?,javascript,internet-explorer,dom,Javascript,Internet Explorer,Dom,IE不允许写入style或head元素的innerHTML属性。那么,如何将一个样式元素从一个文档头复制到另一个文档头呢?如果要复制某些元素,请尝试与函数copy\u style(src\u style\u tag){ var tmp_div=document.createElement('div'); var innerHTML=src_style_tag.innerHTML; tmp_div.innerHTML='x'+innerHTML+''; 返回tmp_div.getElementsB

IE不允许写入style或head元素的innerHTML属性。那么,如何将一个样式元素从一个文档头复制到另一个文档头呢?

如果要复制某些元素,请尝试与

函数copy\u style(src\u style\u tag){
var tmp_div=document.createElement('div');
var innerHTML=src_style_tag.innerHTML;
tmp_div.innerHTML='x

'+innerHTML+''; 返回tmp_div.getElementsByTagName('style')[0]; }

神奇的是,您需要
tmp\u div
innerHTML
中的
标记。如果没有它,IE将不接受样式元素。

cloneNode无法从不同的文档(例如iframe)工作。您需要使用IE不支持的document.importNode。
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];
}