2012-01-03 147 views
0

我認爲我的return false代碼無法正常工作。請看:返回false不工作

$(".home .options .tabs ul li a").click(function(e){ 



    var qual = $(this).attr("href"); 

    $(".content.home .options .tabs ul li").removeClass("active"); 
    $(this).parent().addClass("active"); 

    $(".content.home .options .holder .tab").hide(); 
    $(".content.home .options .holder "+qual).show(); 

    return false; 


}); 

這裏是我的html代碼:

<div class="tabs"> 
       <ul> 
        <li class="active"><a href="#lancamentos">Lançamentos</a></li> 
        <li><a href="#obras">Em Obras</a></li> 
        <li><a href="#prontos">Prontos para Morar</a></li> 
       </ul> 
    </div><!-- tabs --> 

當我點擊,它不會去鏈接,但跳轉的頁面。發生了什麼?

謝謝!

UPDATE

好吧,我已經更新了代碼。仍然沒有工作。

+0

這可能會幫助:http://api.jquery.com/event.stopPropagation/ – 2012-01-03 13:27:58

+1

@大衛拉伯格:我認爲這是相當約'preventDefault'停止導航。 – pimvdb 2012-01-03 13:31:54

+0

跳頁?實際上想說什麼? – AmGates 2012-01-03 14:04:49

回答

6

您需要取消點擊<a>標籤,而不是包含<li>

+0

你是正確和快速的,我錯過了很快保存... – Murtaza 2012-01-03 13:30:06

0

你在點擊事件中寫道return falseli你應該寫它<a>標籤

0

您不需要返回真/假。錨的OnClick功能應該在這裏工作。我在代碼下面測試過。你可以使用螢火蟲來調試代碼。

$(".tabs ul li").click(function(e){ 
    var qual = $(this).find('a').attr("href"); 
    $(".tabs ul li").removeClass("active"); 
    $(this).addClass("active"); 
});