【发布时间】:2014-03-05 10:00:59
【问题描述】:
对不起,如果这是一个“菜鸟”问题。 (我已经对其进行了大量编辑,以便更清楚地了解我在寻找什么。)考虑一些链接:
<p><a class="bgColor_0" href="whatever">Click Me</a></p>
<p><a class="bgColor_1" href="whatever">Click Me</a></p>
<p><a class="bgColor_2" href="whatever">Click Me</a></p>
页面上的其他地方有一个 DIV,它也使用相同的类名。所以在样式表中:
div.bgColor_1 {background-color: #ffffff; }
div.bgColor_2 {background-color: #00ffff; }
div.bgColor_3 {background-color: #ffff00; }
我想要的是获取单击的类的背景颜色属性的值作为字符串(如果未设置,则为空)。
所以我想创建一个点击函数来测试以 bgColor_ 开头的类
jQuery('a').click( function(){
myClass = jQuery(this).attr('class').match(/\bbgColor_\S+/g);
// eg. myClass = 'bgColor_0';
// now... how do I get the background-color property of bgColor_0?;
} );
我想要得到的是类 myClass 的 div 的 backgroundColor 属性的 -value-
例如。如果用户点击 a.bgColor_1,我想在样式表中获取类 div.bgColor_1 的 background-color 属性,然后将另一个(待确定)div 分配给类 bgColor_1,以便我可以更改其颜色。
【问题讨论】:
-
有什么理由不能同时拥有
bg_Color_X和hasBgColor?这样你就不必做任何部分匹配选择器。 -
顺便说一下,类名 bgColor_0 不是很语义化。尝试查看sass-lang.com,这样您就不必滥用类名来避免在多个地方重复相同的颜色
-
@ErikPhilips 没有理由,这在我的书中是一个更清洁的解决方案。它将三个元素在语义上联系在一起,而不是依赖子字符串来分组元素