我尝试在样式display:none
有人可以帮助我,谢谢
HTML
<li class="portfolio-item" style="display: none;">
<div class="item-image">
<a class="colorbox cboxElement" href="http://www.monsite.fr/IMG_1423.jpg""></a>
</div>
</li>
<li class="portfolio-item" style=" ">
<div class="item-image">
<a class="colorbox cboxElement" href="http://www.monsite.fr/IMG_1424.jpg""></a>
</div>
</li>
的jQuery
jQuery(document).ready(function($){
$(".portfolio-item .item-image a[href$='.jpg']").colorbox({
rel:"group2",
maxWidth:"80%",
maxHeight:"80%"});
if($('.portfolio-item').css('display') == 'none'){
$('.portfolio-item').find(".item-image a[href$='.jpg']").removeClass('colorbox');
}
});
修改
感谢您的帮助,但我试过了
jQuery(document).ready(function($){
$(".portfolio-item .item-image a[href$='.jpg']").colorbox({
rel:"group2",
maxWidth:"95%",
maxHeight:"95%"});
$('li.portfolio-item').filter(':hidden').map(function() {
$(this).find('a.colorbox').removeClass('colorbox');
});
});
但它不起作用。
答案 0 :(得分:2)
确保您的href属性被一组"
:
<a class="colorbox cboxElement" href="http://www.monsite.fr/IMG_1423.jpg"></a>
尝试使用:hidden
伪选择器来检测元素是否有display:none;
:
if($('.portfolio-item:hidden').length){
$('.portfolio-item').find(".item-image a[href$='.jpg']").removeClass('colorbox');
}
在投资组合项目上使用.each
循环可能是更好的方法:
$('.portfolio-item:hidden').each(function(){
$(this).find(".item-image a[href$='.jpg']").removeClass('colorbox');
}
答案 1 :(得分:0)
首先,修复你的标记。然后,您可以执行以下操作: -
$('li.portfolio-item').filter(':hidden').map(function() {
$(this).find('a.colorbox').removeClass('colorbox');
});