有没有一种方法可以使用jQuery更改CSS类的属性,而不是元素属性?
这是一个实际的例子:
我上课有一个div red
red
.red {background: red;}
我想更改类red背景属性,而不是已red分配类背景的元素。
如果我使用jQuery .css()方法做到这一点:
$('.red').css('background','green');
它会影响现在具有class的元素red。到这里为止一切都很好。但是,如果我进行Ajax调用,并在redclass中插入更多div ,则这些背景将不会具有绿色背景,而它们将具有初始red背景。
我可以再次调用jQuery .css()方法。但是我想知道是否有一种方法可以更改类本身。请考虑这只是一个基本示例。
您不能直接使用jQuery更改CSS属性。但是您至少可以通过两种方式达到相同的效果。
function updateStyleSheet(filename) { newstylesheet = "style_" + filename + ".css"; if ($("#dynamic_css").length == 0) { $("head").append("<link>") css = $("head").children(":last"); css.attr({ id: "dynamic_css", rel: "stylesheet", type: "text/css", href: newstylesheet }); } else { $("#dynamic_css").attr("href",newstylesheet); } }
上面的示例复制自:
$("head").append('<style type="text/css"></style>'); var newStyleElement = $("head").children(':last'); newStyleElement.html('.red{background:green;}');