我有一个简单的菜单, anchor 内有一个箭头。我有 jQuery,它添加了一个类以在单击时显示箭头。但是,如果单击的 li a 没有子菜单,我需要它在单击时不“显示箭头”。这是我的菜单的粗略示例:
<ul id="menu">
<li><a href="#">TopLevel_LinkOne <img src="img/down-carat.png" class="down-carat"></a></li>
<li><a href="#">TopLevel_LinkTwo <img src="img/down-carat.png" class="down-carat"></a></li>
<li><a href="#">TopLevel_LinkThree <img src="img/down-carat.png" class="down-carat"></a>
<ul class="sub-menu">
<li><a href="#">Submenu Link One <img src="img/down-carat.png" class="down-carat"></a></li>
<li><a href="#">Submenu Link Two <img src="img/down-carat.png" class="down-carat"></a></li>
<li><a href="#">Submenu Link Three <img src="img/down-carat.png" class="down-carat"></a></li>
</ul>
</li>
</ul>
在此示例中,如果单击“TopLevel_LinkOne”或“TopLevel_LinkTwo”,我不希望显示箭头。我无法删除箭头图像,因为它是由 Wordpress 中的导航器自动添加的。
这是我的 jQuery:
$('#menu li a').click(
function() {
$('ul li a').removeClass('show-arrow'); // Remove any previous arrows
if('some jquery here that checks if THIS has submenu') {
$(this).addClass('show-arrow'); // Show the arrow image
}
});
最佳答案
试试这个:
if($(this).parent().find('ul').length) {
$(this).addClass('show-arrow'); // Show the arrow image
}
关于javascript - 单击 anchor 时,如何定位没有任何 UL 的 LI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23518515/