2013-03-25 46 views
0

我在下面有下面的代碼和jsFiddle鏈接。在我的腦海裏,我的代碼應該可以工作,它找到了正確的li標籤並且禁用了默認操作,但問題在於它將其重複應用到子元素中,以及它不應該這樣做。你可以點亮一些光嗎?preventDefault反覆進入孩子李的時候它不應該

http://jsfiddle.net/andyjh07/6HAvV/

HTML:

<ul id="nav"> 
    <li class=""><a href="home.htm">Home</a> 
    </li> 
    <li class="nav_parent"><a href="our-projects.htm">Our Projects</a> 
     <ul class="nav_child"> 
      <li class=""><a href="the-palms-at-corozal.htm">The Palms At Corozal</a> 
      </li> 
      <li class=""><a href="the-lakes-at-consejo.htm">The Lakes At Consejo</a> 
      </li> 
     </ul> 
    </li> 
    <li class="nav_parent"><a href="about-us.htm">About Us</a> 
     <ul class="nav_child"> 
      <li class=""><a href="who-we-are.htm">Who We Are</a> 
      </li> 
      <li class=""><a href="other-projects.htm">Other Projects</a> 
      </li> 
      <li class=""><a href="partners.htm">Partners</a> 
      </li> 
     </ul> 
    </li> 
    <li class="nav_parent"><a href="about-belize.htm">About Belize</a> 
     <ul class="nav_child"> 
      <li class=""><a href="general-info.htm">General Info</a> 
      </li> 
      <li class=""><a href="investing-in-belize.htm">Investing In Belize</a> 
      </li> 
      <li class=""><a href="useful-links.htm">Useful Links</a> 
      </li> 
     </ul> 
    </li> 
    <li class=""><a href="news.htm">News Articles</a> 
    </li> 
    <li class=""><a href="contact-us.htm">Contact Us</a> 
    </li> 
</ul> 

的jQuery:

$(document).ready(function() { 
    $('ul#nav li:eq(1)').addClass('removeLink'); 
    $('.removeLink').click(function (e) { 
     e.preventDefault(); 
    }); 
}); 

回答

1

的問題是,你要綁定到li元素,因爲孩子們的li內,他們也觸發click事件。

嘗試更新,並防止只a元素上點擊:

$('.removeLink > a').click(); 

這裏是一個updated jsFiddle

+0

我太親近了!哈哈。非常感謝。當SO讓我接受這個答案:) – 2013-03-25 10:23:00

+1

沒問題,很高興你把它分類:) – BenM 2013-03-25 10:23:24

相關問題