使用jquery / js从div类中删除<style>

时间:2015-08-22 14:35:59

标签: javascript jquery

我想在&lt; div&gt; 元素中删除内联CSS &lt; style&gt; 元素。此&lt; style&gt; 元素从JavaScript文件输出。

&#xA;&#xA;

这是文档:

&#xA;&# xA;
 &lt; div id =“rmid”class =“rm”&gt;&#xA; &lt; script type =“text / javascript”src =“http://domain.com/file.js”&gt;&lt; / script&gt;&#xA;&lt; / div&gt;&#xA;  < / pre>&#xA;&#xA; 

加载此JavaScript文件会创建其他元素(编者注:可能是通过document.write()),从而产生HTML标记,如下例所示:

&#xA;&#xA;
 &lt; div id =“rmid”class =“rm”&gt;&#xA; &lt; script type =“text / javascript”src =“http://domain.com/file.js”&gt;&lt; / script&gt;&#xA; &LT;风格&GT; .............&lt; / style&gt;&#xA;各种内容&#xA;&lt; / div&gt;&#xA;  
&#xA;&#xA;

如何在加载页面时将其删除?

&#xA ;

2 个答案:

答案 0 :(得分:1)

如果您使用的是jquery,  你可以用

$(document).ready( function() { $( '#rmid > style' ).remove(); } );

如果你打算不使用jQuery,那么事情就会发生一些变化:

var parent = document.getElementById("rmid");
parent.querySelector("style").innerHTML = "";

答案 1 :(得分:0)

您可以调用函数<body onload="removeStyles()"这将使用#id = id选择上述div中的所有样式。

function removeStyles(){
    var sty = document.querySelectorAll('div#id style');
    for(var i=0; i<sty.length; i++){
        sty.item(i).remove();
    }
}