1

我正在一个网站上工作,但出现了问题。我希望如果一个图像存在,其他 DIV 应该隐藏。

如果所有 5 个图像都存在,则不应隐藏任何 DIV。

如果存在少于 5 个图像,则应隐藏剩余的 DIV。

我不是 jquery 方面的专家,所以寻找可以这样做的简短 jquery 片段。

这是html。

<div class="screenshoto">
<div id="scr"><a href="{$screenshot_1}"><img title="{$p_name} {$p_vers} screenshot" alt="{$p_name} {$p_vers} screenshot" style="max-width:615px;" src="{$screenshot_1}"></a></div> </br>
<div id="scr"><a href="{$screenshot_2}"><img title="{$p_name} {$p_vers} screenshot" alt="{$p_name} {$p_vers} screenshot" style="max-width:615px;" src="{$screenshot_2}"></a></div> </br>
<div id="scr"><a href="{$screenshot_3}"><img title="{$p_name} {$p_vers} screenshot" alt="{$p_name} {$p_vers} screenshot" style="max-width:615px;" src="{$screenshot_3}"></a></div> </br>
<div id="scr"><a href="{$screenshot_4}"><img title="{$p_name} {$p_vers} screenshot" alt="{$p_name} {$p_vers} screenshot" style="max-width:615px;" src="{$screenshot_4}"></a></div> </br>
<div id="scr"><a href="{$screenshot_5}"><img title="{$p_name} {$p_vers} screenshot" alt="{$p_name} {$p_vers} screenshot" style="max-width:615px;" src="{$screenshot_5}"></a></div> </br>
</div>

我已经搜索了 Stack Overflow,但是找到了一个相关的(检查图像是否不存在然后隐藏 div)片段并且没有工作。

有人可以帮助我的html工作代码吗?谢谢。

4

1 回答 1

0

尝试这个:

    var breakLoop = false; //initialising 
    $('.screenshoto div').each(function(){
        if(breakLoop ) return false; //breaking the loop if image is missing
        if($(this).find('img').length == 0){
           $(this).hide();
           breakLoop = true;
        }
    });
于 2013-11-10T20:37:25.273 回答