2013-04-09 49 views
1

我有一個旋轉木馬,我試圖隱藏某些幻燈片的描述,如果沒有內容動態輸出。如果其中的標題標記爲空,請隱藏div?

我的結構,內容是輸出:

<div class="caption"> 
    <h3><a>title</a></h3> 
    <p><a>description</a></p> 
</div> 

我的結構而不:

<div class="caption"> 
    <h3><a></a></h3> 
    <p><a></a></p> 
</div> 

的Javascript:

if($.trim($('.caption h3 a').text()) != "") { 
$(".carousel-caption.h").addClass("visible"); 
} 

我從通過在這裏類似的問題找得到的JavaScript。我嘗試了各種各樣的方法,但無濟於事。我不太確定我缺少什麼?

回答

5

你可以做到這一點隱藏有一個空的頭都.caption

$('.caption').show().filter(function(){ 
    return $.trim($('h3', this).text())==='' 
}).hide(); 

這可能與您最初的解決方案更接近,只改變了上課的時候頭上有一個內容:

$('.caption').each(function(){ 
    if ($.trim($('h3', this).text())!=='') $(this).addClass('visible'); 
}); 
+0

謝謝!像魅力一樣工作! – popshuvit 2013-04-09 20:06:43

1

我不是一個jQuery的傢伙。但在YUI也可以是簡單地想:

if (Y.one(".caption h3 a").get("innerHTML") == "") { 
    alert("its empty"); 
} 

嘗試使用的.text的html的,而不是在jQuery的

0

這個作品,

if($('.caption h3 a').text().trim() != "") { 
     $(".carousel-caption.h").addClass("visible"); 
} 

FIDDLE