-3

生成的html:

<div class="fp-thumbnail"> <img src="" /></div>

在我看来,这应该隐藏 div:

$('div').has('img[src=""]').addClass('hide');

Css(不确定是否需要):

.hide{display:none !important;}

更新:它确实在 js fiddle 中工作 - http://jsfiddle.net/dHMk4/但不在网站上。

更具体地说:我想隐藏整个 div 而不仅仅是图像。

第二次更新:给出的解决方案在实践中没有一个比我已经拥有的更好,所以我用不同的方式做了。对于那些至少尝试过的人,感谢您的帮助。

4

2 回答 2

2

尝试这样的事情:

$("img[src='']").parent(".fp-thumbnail").addClass("hide");

http://jsfiddle.net/PQcZq/

于 2013-01-14T21:17:58.363 回答
1

你可以试试这个方法

var $img = $('img');       // Cache the images

$img.each(function(){      // Loop over multiple image tags
   var $this = $(this);    
  if( $this.attr('src') === ''){      // If src is empty
      $this.closest('div.fp-thumbnail').hide();  // Hide the corresponding parent
  }
});

如果您只想对特定图像执行此操作,您可以删除.each loop并指定图像的特定选择器。

于 2013-01-14T21:21:09.577 回答