我試圖建立一個導航。我想知道< li>是否有< ul>。 如果< li>有< ul>,那麼< ul>應該淡入,否則應該打開鏈接。我已經在網上尋找..無法找到我的問題的完美解決方案。jquery:如何找到嵌套的ul與if語句
這裏是我的標記:
<nav id="mobile-nav">
<ul>
<li><a href="#" title="Nav">Link</a>
<ul class="second">
<li><a href="#" title="Sub Nav">Link 2</a>
<ul>
<li><a href="#" title="Sub Nav 2">Link 3</a></li>
<li><a href="#" title="Sub Nav 2">Link 3</a></li>
</ul>
</li>
<li><a href="#" title="Sub Nav">Link 2</a></li>
<li><a href="#" title="Sub Nav">Link 2</a></li>
</ul>
</li>
<li><a href="#" title="Nav">Link</a></li>
<li><a href="#" title="Nav">Link</a></li>
<li><a href="#" title="Nav">Link</a></li>
</ul>
</nav>
的jQuery:
$('#mobile-nav').on('click', 'a', function(){
if($(this).parent().has('ul')){
alert("has ul");
return false;
} else {
alert("no ul");
return false;
}
});
我測試了它,它總是給我「有UL」。
我也試過這樣:
if($(this).closest('li').has('ul')){
alert("has ul");
return false;
} else {
alert("no ul");
return false;
}
感謝您的幫助
其中需要的鏈接打開 –
嘗試http://jsfiddle.net/arunpjohny/cwmT7/或http://jsfiddle.net/arunpjohny/cwmT7/2/ –