0

我有一组链接:

<div id="dd" class="mywrap-dropdown-2" tabindex="2">Select
    <ul class="dropdowner" id="coll-filter">
        <li><a href="#">Black</a></li>
        <li><a href="#">White</li>
        <li><a href="#">Blue</li>
    </ul>
</div> 

如果单击链接“白色”,那么我的链接“黑色”和“蓝色”将不再可单击。

这是我拥有但不起作用的:

$( '.dropdowner' ).on( 'click', 'li', function( e ) {
    e.preventDefault();  
    $(".dropdowner li a").not(this).removeAttr("href")
});
4

2 回答 2

2

您的标记无效,您有未关闭的锚链接:

<li><a href="#">White  </li>
<li><a href="#">Blue   </li>

请注意,在您的代码中this引用的li元素不是锚链接,您应该选择锚链接而不是li元素。

$( '.dropdowner' ).on( 'click', 'a', function( e ) {

或者:

$(".dropdowner li").not(this).find('a').removeAttr("href")
于 2012-10-15T15:19:42.510 回答
0

unbind()取消绑定与该类关联的所有点击事件

 $('.dropdowner').on('click', 'a', function(e) {
    e.preventDefault();
    if ($(this).text().indexOf('White') > -1) {
        alert('Clicked Link with White..')
        $('.dropdowner a').not(this).unbind();
    } else {
        alert('Other Links Cliked');
    }
});​

试试这个..当点击黑色链接时,这将删除其他链接的点击事件..

检查小提琴

于 2012-10-15T15:18:42.723 回答