0

次のような出力が生成されます。

<figure>
    <a href="location.php"><img src=""></a>
</figure>

そして、このJSを適用すると:

$(funciton() {
    $('img').each(function(){
        if($(this).attr('src') == null || $(this).attr('src') == '')
            { 
                $(this).parent().remove();
            }
});

img タグを削除し、タグの親ですが、この出力をページに残します。

<figure>
"&#8203"            ​
</figure>

parent't の親タグを削除するか、空白のエンティティが存在しないようにトリミングするにはどうすればよいですか? figure タグに何かがある場合、css から 1px の高さとマージンがあります。私はcssを変更できますが、これを理解したいので、助けていただければ幸いです!

4

1 に答える 1

1

image タグに がない場合に親<figure>タグが空であることを確認するには、次の.srcようにします。

$(function() {
    $('img').each(function() {
        if(!this.src) { 
            $(this).closest("figure").empty();
        }
     }
});

.empty()要素内のすべての子ノードとテキストを削除します。

での比較も簡略化したことに注意してください.src。まず、ここで jQuery を使用する必要はありません。次に、単一のテストで空の値をチェックできます。

<figure>タグがページのスペースをまったく占有しないようにしたい場合は、その.hide()上で a を実行することもできます。

于 2012-11-19T03:12:35.067 に答える