私はこのコードを試しますが、彼はうまくいきません -
var $this = $('img');
if ($this.attr('src') == '/templates/babydrive/dleimages/no_image.jpg') {
$this.css('display', 'none');
}
問題は何ですか?助けてください!
.each()
すべての画像をチェックするために使用します。最初の画像のみをチェックしていました。
var images = $('img');
images.each(function() {
if ($(this).attr('src') == '/templates/babydrive/dleimages/no_image.jpg') {
$(this).css('display', 'none');
}
});
あなたのコードは、最初に見た「IMG」タグをチェックしています。マークアップで CSS を使用して、画像をより具体的に示します (単一の画像の場合は ID を使用し、それ以外の場合はクラスを使用します。たとえば、そのクラスの画像のグループなど)。
ソースに基づいて各画像の表示プロパティを設定します。
$('img').css('display', function() {
return $(this).attr('src')==='/templates/babydrive/dleimages/no_image.jpg' ? 'none' : 'inline';
});
.filter()
関数呼び出しに一致する要素を見つけるために使用します。
$('.img').filter(function() {
return $(this).attr('src') == '/templates/babydrive/dleimages/no_image.jpg';
}).hide();
src
をセレクターに入れることもできます。
$('.img[src=/templates/babydrive/dleimages/no_image.jpg]').hide();