样式表可以获取动态更改它的类或ID吗?

时间:2013-08-23 15:17:29

标签: javascript jquery css

我使用CORS来下载页面及其CSS。我将CSS存储在样式标记中并将其附加到头部。每次加载页面时我都要擦除CSS。

有一种简单的方法吗?我在考虑给它一个id或class,但我不确定是否允许。在类的定义下,它们都不是BUT的可选属性,它可以放在一个元素上,我认为这在技术上是一个元素。

有谁知道如何做到这一点?

我目前填充它的方式是:

var CSS = ".....";
var $style = $("<style type='text/css' />").append(CSS);
$("head").append($style);

3 个答案:

答案 0 :(得分:1)

您可以删除所有样式表:

$('link[type="text/css"], style').remove();

答案 1 :(得分:1)

style元素与其他元素一样,如果删除元素,则会删除它定义的CSS样式。

因此,如果您添加了特定的样式元素,就像问题中的代码一样,您只需执行以下操作即可将其删除:

$style.remove();

...因为您已经在$style变量中引用了它。

或者,提供要删除style或类的特定id元素,然后使用该元素将其删除:

// Adding ...
var CSS = ".....";
var $style = $("<style type='text/css' />").append(CSS).addClass("dynamic");
$("head").append($style);

// Removing later...
$("style.dynamic").remove();

您也可以只更新现有元素的文本,这将更新它定义的样式。

答案 2 :(得分:0)

您可以使用style查找并删除所有$("style[type='text/css']").remove()代码,也可以将$style存储为全局变量,然后调用$style.remove()