给定一个带有大量段落标记的DIV:

<div>
 <p></p>
 <p>ADSADASAD ADS ADS  A </p>
 <p>ADSADASAD ADS ADS  A </p>
 <p>ADSADASAD ADS ADS  A </p>
 <p>ADSADASAD ADS ADS  A </p>
</div>

如何使用jQUery神奇地找到第一个不为空的<P>?思想?

最佳答案

我发现使用方法而不是选择器来实现这一点就不那么费心了:

$('div').find('p').not(':empty').first()

编辑:根据海报的评论,这里有一个版本将“empty”定义为“没有文本内容,尽管可能存在HTML标记”:
$('div#foo').find('p').filter( function(){
  return ( $.trim($(this).text()).length );
}).first()

示例:http://jsfiddle.net/8dem8j8L/

07-24 19:56
查看更多