Jquery选择器基于内联CSS样式或跨度文本

时间:2016-06-16 14:08:30

标签: javascript jquery html css selector

如果它适合某些条件,我试图选择一个跨度。第一个标准是内联CSS style="width:0% !important;" 第二个是跨文本,即

<span class="bv-rating-label">   (0)  </span>

以下是完整的HTML代码:

<div class="bv-inline-rating-container">
<dl class="bv-stars-container" role="presentation">
    <dd class="bv-rating-ratio" role="presentation">
        <span class="bv-rating-stars-container">
            <span class="bv-rating-stars bv-rating-stars-off" aria-hidden="true">  ★★★★★  </span>
            <span class="bv-rating-stars-on bv-rating-stars" style="width:0% !important;" aria-hidden="true">  ★★★★★  </span>
        </span>
    </dd>
    <dd class="bv-rating-ratio-count" role="presentation">
        <span class="bv-rating-label">   (0)  </span>
    </dd>
</dl>

以下是我尝试过的一些选项。 选项1:

jQuery(".bv-rating-label:contains('   (0)  ')").hide();   

选项2:

jQuery('.bv-rating-stars-on.bv-rating-stars[style*="width:0% !important"]).hide();

上述选项均无效:/

2 个答案:

答案 0 :(得分:0)

我将您的问题放入JSFiddle

我能够根据各自的属性和它们保存的文本值隐藏元素。

如果你不想去JSFiddle,我就是这样:

<强> HTML:

<div class="bv-inline-rating-container">
<dl class="bv-stars-container" role="presentation">
    <dd class="bv-rating-ratio" role="presentation">
        <span class="bv-rating-stars-container">
            <span class="bv-rating-stars bv-rating-stars-off" aria-hidden="true">  ★★★★★  </span>
            <span class="bv-rating-stars-on bv-rating-stars" style="width:0% !important;" aria-hidden="true">  ★★★★★test  </span>
        </span>
    </dd>
    <dd class="bv-rating-ratio-count" role="presentation">
        <span class="bv-rating-label">   (0)  </span>
    </dd>
</dl>

<强> jQuery的:

$(document).ready(function () {
    $(".bv-rating-label:contains('(0)')").hide();
});

$(document).ready(function () {
    $(".bv-rating-stars-on, .bv-rating-stars[style='width:0% !important']").hide();
});

我希望这会有所帮助。

答案 1 :(得分:-1)

我认为这可能有所不同。使用类更通用。你为什么不使用Id?

$('#yourId').hide();

但是如果你想在另一个中使用一个类,那么它也是可能的:

$('.yourclass.innerClass').hide();

然后你可以尝试以下三个例子:

$('.bv-rating-stars-on, .bv-rating-stars[style="width:0%!important"]').hide();
$('.bv-rating-ratio-count .bv-rating-label').hide();
$('.bv-rating-stars-container .bv-rating-stars').hide();

最好的问候