0

我想将 JQuery CSS 调用(修改 CSS 以便我可以使用变量)与一些 Javascript div/类匹配。我不能使用“id”,因为循环中有很多这样的实例。编辑:它仍然不能正常工作,我怀疑我需要更多细节。

CSS 的相关部分(还有其他转换线,此处未显示):

.thermometer .circle {
    position: absolute;
    ...

.pie {
    position: absolute;
    ...
}

.hold {
    position: absolute;
    ...
    clip: rect(0px, 26px, 26px, 13px);
}

.pieSlice1 .pie {
    background-color: white;
    -webkit-transform:rotate(60deg);
    transform:rotate(60deg);
}

在 JST EJS 文件中:

 <div class="thermometer">
   <div class="circle <%= this.presenter.newColor(nutrient) %>">
     <div class="pieSlice1 hold">
       <div class="pie"></div>
         <% $(".pieSlice1.hold .pie").css({'-webkit-transform': 'rot
ate(22deg)'}); %>

我已经删除了“pieSlice1”和“hold”之间的空格,但是我需要任何其他类来匹配吗?

4

3 回答 3

2

它应该是:

.pieSlice1.hold .pie

.pieSlice1和之间没有任何空格.hold

于 2013-01-04T13:48:40.773 回答
1

如果你想要一个交集,只需将选择器写在一起,中间不要有空格。

$(".pieSlice1.hold .pie").css({'-webkit-transform': 'rot
ate(22deg)'});

当我们包含空间时,它会寻找后代......

另一种选择是:

$(".pieSlice1").filter(".hold .pie").css({'-webkit-transform': 'rot
ate(22deg)'});
于 2013-01-04T13:49:04.707 回答
0

由于.pieSlice1.hold都是同一元素上的两个类,因此您需要将它们链接起来:

.pieSlice1.hold .pie

注意.pieSlice1和之间没有空格.hold——这意味着它将匹配一个元素与一个类,该类是一个同时具有和类.pie的元素的后代。 .pieSlice1.hold

而你现在拥有的...

.pieSlice1 .hold .pie

这将匹配一个元素与类.pie,该类是一个元素与类的后代.hold,它本身是一个元素与类的后代.pieSlice1

于 2013-01-04T13:51:27.963 回答