javascript - 使用 JQuery 更改类中的 CSS 规则

标签 javascript jquery css

我有一门 CSS 类(class)

.Foo
{
  width:20px;
}

我想使用 Jquery 在事件上做类似的事情:

$(".Foo").css("width", "40px");

这行不通。这是错误的方法吗?我应该使用 addClass() 和 removeClass() 吗?

编辑:我发现了我的问题。这个命令确实有效。在我的特定应用程序中,我在使用命令之前没有使用该类创建元素,因此创建它们时没有任何更改。

基本上这个命令不会改变 CSS 样式规则,只会改变使用该类的元素。

最佳答案

可以更改 CSS 样式规则。您需要查看:

document.styleSheets 集合
styleSheet.cssRules 属性(或 styleSheet.rules 适用于 IE7 和 IE8)
rule.selectorText 属性
rule.style 属性

例如:

var ss = document.styleSheets[0];
var rules = ss.cssRules || ss.rules;
var fooRule = null;
for (var i = 0; i < rules.length; i++)
{
    var rule = rules[i];
    if (/(^|,) *\.Foo *(,|$)/.test(rule.selectorText))
    {
        fooRule = rule;
        break;
    }
}
fooRule.style.width = "40px";

工作演示:jsfiddle.net/kdp5V

关于javascript - 使用 JQuery 更改类中的 CSS 规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6115325/

相关文章:

html - 我有 2 个不同的列表,我想在 css 上设置样式,我应该怎么做?

html - 将跨度内的背景图像与显示为表格单元格对齐

javascript - Angular : form. $valid 为 false,但 form.$invalid 也仍然为 false

javascript - 我的 Jquery CSS 不起作用

javascript - Li 元素在单击时不会保持选中状态

通过ajax调用c#方法时出现Javascript错误404

jquery - 无法调用服务器端 webmethod 函数

javascript - 使用提交按钮保存响应 (html)

javascript - 如何使用 php 查询处理数据添加多字段输入

Javascript 求和值