有两个div
部分具有相同的类,并且具有相同的ul
和li
以及a
。
我的代码中有两个jQuery点击事件。当我点击谷歌时,两个jQuery点击事件都会激活。但我不想两者都这样做,只有一个。我如何实现这一目标?
例如,如果Google被点击,我只想要jQuery点击事件来做某事,而不是另一个。这些是我正在使用的DOM元素:
<div class = "abc">
<ul>
<li class="year_"><a href="www.google.com">google</a></li>
</ul>
</div>
<div class ="abc">
<ul>
<li><a href="www.yahoo.com>yahoo</a></li>
</ul>
</div>
href
可能会发生变化,因此我无法将选择器作为基础。我所遵循的代码。
$( 'div.abc ul li[class^="year_"] a' ).click( function(){
//do something
});
$( 'div.abc ul li a' ).click( function(){
//do something
});
答案 0 :(得分:5)
你可以做一个条件语句,找到带有“year_”类的li:
$( 'div.abc ul li a' ).click( function(){
if ($(this).parents('li').is('[class^="year_"]')){
//do something
} else {
//do something else
}
});
请参阅jsfiddle。