如何在UL中选择链接>;LI并使其不可通过jQuery单击?

如何在UL中选择链接>;LI并使其不可通过jQuery单击?,jquery,Jquery,我对jQuery有点不在行,但我知道它可以做到以下几点: 在下面的HTML中选择链接,使其不在任何地方。(我这样做是为了让它显示一个下拉列表) 这是HTML <ul id="navigation"> <li class="has-drop"><a href="http://72.10.55.131/shop.html/">shop</a></li> <li class="has-drop"><a href="h

我对jQuery有点不在行,但我知道它可以做到以下几点:

在下面的HTML中选择链接,使其不在任何地方。(我这样做是为了让它显示一个下拉列表)

这是HTML

<ul id="navigation">
  <li class="has-drop"><a href="http://72.10.55.131/shop.html/">shop</a></li>
  <li class="has-drop"><a href="http://72.10.55.131/collections.html/">collections</a></li>
</ul>
我正试图瞄准名单上的第二个。如果您想查看源代码,这些链接是实时的


谢谢你的帮助

捕获单击事件并防止默认行为:

$('#navigation li.dropdown').on('click', function(event) {
  event.preventDefault();
});

捕获单击事件并防止默认行为:

$('#navigation li.dropdown').on('click', function(event) {
  event.preventDefault();
});

由于您提到了
,我正试图针对列表中的第二个。
在您的问题中,因此如果您只想禁用第二个列表项的链接行为,那么您可以使用

$('ul#navigation li').eq(1).find('a').on('click', function(e){
    e.preventDefault();
});
否则(对于所有链接),您可以使用
Blender
的答案


.

因为您提到了
,我正试图针对列表中的第二个。
在您的问题中,如果您只想禁用第二个列表项的链接行为,那么您可以使用

$('ul#navigation li').eq(1).find('a').on('click', function(e){
    e.preventDefault();
});
否则(对于所有链接),您可以使用
Blender
的答案

.

试试这个

$('li.has-drop:eq(1) a').attr('href','#');
试试这个

$('li.has-drop:eq(1) a').attr('href','#');

令人惊叹的。我怎么可能只针对第二个李?那就是我要找的人。“collections.html”之一。谢谢,我会给它上课的。依赖元素的顺序不是很好的做法。同意,但我不能给它一个类,因为它是由Magento CMS吐出来的。@Mark Mitchell现在只做
$('has-drop:eq(1)')
。太棒了。我怎么可能只针对第二个李?那就是我要找的人。“collections.html”之一。谢谢,我会给它上课的。依赖元素的顺序不是很好的做法。同意,但我不能给它一个类,因为它是由Magento CMS吐出来的。@Mark Mitchell现在只做
$('has-drop:eq(1)')
。只检查我的第二个li的答案。只检查我的第二个li的答案。