我正在尝试检查其他具有类可见的li内的li是否可见,在那种情况下什么也不做,但是如果它没有添加样式宽度:0px。
if (jQuery("li:has(li.is-visible)")){
//nothing at this moment
}
else {
jQuery('ul.cd-gallery li').css({'width' : '0px'});
}
HTML部分代码
<ul class="cd-item-wrapper">
<li data-type="sve" class="is-visible">
<img class="img-reponsive" src="someimg.jpg" alt="Jabuka" height="150" />
</li>
<li data-type="proizvodi" class="is-hidden">
<img class="img-reponsive" src="someimg.jpg" alt="Jabuka" height="150" />
</li>
<li data-type="vocnaci" class="is-hidden">
<img class="img-reponsive" src="someimg.jpg" alt="Jabuka" height="150" />
</li>
</ul>
</li>
但是我正在使用jQuery将类从is-hidden更改为is-visible,反之亦然。因此,我的代码看不到任何更改,并且我已全部分组以显示所有图像。如果有帮助,请链接到该页面my site
我的Jquery代码很好,至少我认为,但是问题是(如果您要在站点上检查元素)您会看到一堆,并且我们要更改类别,我需要隐藏没有li> ul的元素(宽度:0) > li class =“ is-visible”
最佳答案
您可以使用hasClass()
(建议将其作为it's fastest)来检测元素是否具有类:
if ( $("li > ul > li").hasClass('is-visible')) {
//nothing at this moment
} else {
$('ul.cd-gallery li').css({
'width', '0px'
});
}
或
is()
:if ( $("li > ul > li").is('.is-visible')) {
//nothing at this moment
} else {
$('ul.cd-gallery li').css({
'width', '0px'
});
}