选择器用于获取具有特定属性和类的所有标记

时间:2014-06-06 14:30:40

标签: javascript jquery

我有以下格式的HTML

<g class="highcharts-series-group">
   ...
   <g class="highcharts-series highcharts-tracker" visibility="visible">
   </g>
   ...
   <g class="highcharts-series highcharts-tracker" visibility="hidden">
   </g>
   ...
</g>

我希望获得highcharts-series-group类中所有highcharts-series highcharts-tracker类且visibility设置为visible的元素。

这样做太过分了,因为有些元素只有g.highcharts-series类。

$('g.highcharts-series-group g.highcharts-series');

这样做没有给我什么

$('g.highcharts-series-group g.highcharts-series .highcharts-series-tracker')

什么是正确的选择器?如何过滤可见性?

5 个答案:

答案 0 :(得分:1)

如果要匹配属于多个类成员的元素,请不要在类选择器之间放置后代组合子(空格)。

 g.highcharts-series.highcharts-series-tracker

答案 1 :(得分:1)

这应该会为您提供课程highcharts-serieshighcharts-trackerhighcharts-series-group个类的所有元素,这些元素也是可见的。

$(".highcharts-series-group .highcharts-series.highcharts-tracker:visible");

答案 2 :(得分:1)

$('.highcharts-series-group .highcharts-series.highcharts-tracker[visibility="visible"]')

这[visibility =&#34; visible&#34;]是属性选择器

以下是示例http://jsfiddle.net/jf7qx/5/

答案 3 :(得分:1)

$('.highcharts-series-group .highcharts-series.highcharts-tracker[visibility="visible"]')

我已经让你成为fiddle

答案 4 :(得分:0)

我希望这会有所帮助:

var el = $('.highcharts-series.highcharts-tracker')
if( el.is(':visible') ) {
    el.css('background-color' , 'green');
    };

<强> JSFiddle Demo