0

我的项目中有一个情况,在 css 中我有一堂课

现在是空的

#version_mobile.hidden
{

}

在 js 中我正在这样做

this.$("#version_mobile.hidden").css({right: - window.text_mobile_width});

(我想我的选择器不好?)

如何使用这个动态创建的值向此类添加“正确”属性?

上课成为

#version_mobile.hidden
    {
     right : -450px;
    }

顺便说一句,我需要使用这个类,因为动画正在使用它:/

4

5 回答 5

2

.css()函数更改内联 css 样式,但对 css 类完全没有影响。

正如文档中指出的那样:

当使用 .css() 作为 setter 时,jQuery 会修改元素的 style 属性。

您还可以使用jQuery甚至函数addClass()来更改类。removeClass()toggleClass()

于 2013-09-12T11:23:01.063 回答
0

您不能添加到类属性,但可以将规则应用于元素样式。

于 2013-09-12T11:21:20.977 回答
0

你想达到什么目的?

您不能使用它向 css 文件添加属性。

您应该查看的是将此 id 或类应用于您的 html 元素

并使用 jquery 选择器访问 javascript 中的元素

$(#selector)并使用 .css 修改属性。

因此,您将通过这种方式获得相同的结果,因为该元素的任何现有属性样式都将被您通过 jquery 放置的最新样式覆盖。

于 2013-09-12T11:24:14.550 回答
0
this.$("#version_mobile.hidden").css({"right", "- window.text_mobile_width"});

您不能在 jquery 中添加类的定义。但是您可以将任何样式添加到您的选择器。

于 2013-09-12T11:22:43.847 回答
0

动态修改样式规则在技术上是可行的,但这很困难。

在该document对象中,您将找到一个名为 的(数组)属性styleSheets,每个引用的样式表都有一个条目。

每个样式表对象(类型CSSStyleSheet)都有一个insertRule方法,您可以使用它来创建新规则或删除现有规则。似乎困难的是枚举现有的规则集,以便您可以找到要修改或删除的规则。

也就是说,与尝试动态更改现有类的样式相比,通常更倾向于简单地更改元素的类。

另见http://davidwalsh.name/add-rules-stylesheets

于 2013-09-12T11:28:50.390 回答