当前位置: 首页 > 面试题库 >

使用jQuery更改CSS类属性

陶原
2023-03-14
问题内容

有没有一种方法可以使用jQuery更改CSS类的属性,而不是元素属性?

这是一个实际的例子:

我上课有一个div red

.red {background: red;}

我想更改类red背景属性,而不是已red分配类背景的元素。

如果我使用jQuery .css()方法做到这一点:

$('.red').css('background','green');

它会影响现在具有class的元素red。到这里为止一切都很好。但是,如果我进行Ajax调用,并在redclass中插入更多div
,则这些背景将不会具有绿色背景,而它们将具有初始red背景。

我可以再次调用jQuery
.css()方法。但是我想知道是否有一种方法可以更改类本身。请考虑这只是一个基本示例


问题答案:

您不能直接使用jQuery更改CSS属性。但是您至少可以通过两种方式达到相同的效果。

从文件动态加载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);
    }
}

上面的示例复制自:

  • 如何使用jQuery即时切换CSS文件

动态添加样式元素

$("head").append('<style type="text/css"></style>');
var newStyleElement = $("head").children(':last');
newStyleElement.html('.red{background:green;}');


 类似资料:
  • 问题内容: 有没有一种方法可以检测元素的“ display” css属性是否已更改(更改为none还是block或inline-block …)?如果没有,有插件吗?谢谢 问题答案: 注意 Level-2-Events/events.html#Events-eventgroupings-mutationevents);其中之一-DOMAttrModified 是您需要的。当然,它们并未得到广泛实施

  • 问题内容: 谁能帮助我,我有两个问题。 我想做的是使用jQuery动态更改CSS类规则。 在上面的示例中,我有一个现在使用jQuery 命名的类,我想仅通过不添加css内联来更改字体大小,而不更改颜色。 我要创建更改并将其保存到文件,请记住,将存在完整的样式表或没有类名将保存在文件中。 我该怎么做才是最简单,更好的方法? 谢谢! 问题答案: 据我所知,没有jQuery的方法可以做到这一点。可能有一

  • 问题内容: 我有一个CSS课 我想使用Jquery在事件上执行类似的操作: 这行不通。这是错误的方法吗?我应该使用addClass()和removeClass()吗? 编辑:我想出了我的问题。实际上,此命令是有效的。在我的特定应用程序中,在使用命令之前,我没有使用类创建元素,因此在创建元素时,没有任何改变。 基本上,此命令不会更改CSS样式规则,只会更改使用该类的元素。 问题答案: 将在页面上找到

  • 问题内容: 我喜欢引导程序示例的外观 但是我需要在 .bs-docs-example:之后 动态更改 内容 ,如下所示: __ 这有可能吗?怎么样? 问题答案: 实际上,我发现了一个不涉及的解决方案:之后(我对CSS太不好了,所以我没有早就考虑过…)我也对CSS有所了解。开始 : 并像这样使用它: 我希望能有所帮助。

  • 问题内容: 我需要找到一种使用JavaScript更改CSS:hover属性的方法。 例如,假设我有以下HTML代码: 以及以下CSS代码: 我想使用JavaScript将悬停属性更改为例如background:#00ff00。知道我可以使用JavaScript通过以下方式访问样式背景属性: 但是我不知道:hover的JavaScript等效项。如何使用JavaScript更改这些的:hover背

  • 问题内容: 我试图在单击另一个元素时更改一个元素的CSS。我进行了很多搜索,但没有一个能完美地工作。目前,我正在使用下面的代码,但是它不起作用。谁能告诉我我错过了什么? 问题答案: 首先,使用属性添加事件处理程序是实现所需功能的一种非常过时的方法。当您使用jQuery标记问题时,这是一个jQuery实现: 一种更有效的方法是将这些样式放入一个类中,然后将该类添加到onclick上,如下所示: