2015-05-10 145 views
0

使用下面的代碼來模擬.animate切換效果。但是,點擊頁面將跳轉到頂部。我試過使用防止,但它仍然跳,所以我覺得我失去了一些東西......任何想法?防止.click功能跳轉到頁面頂部

$(function() { 
$('.menu-toggle').click(function() { 
    var clicks = $(this).data('clicks'); 
    if (clicks) {// odd clicks 

    $(this).find('i').toggleClass('fa-bars fa-times'); 
    $(this).toggleClass('cross'); 
    $('.menu-over ul li').toggleClass('animated-fast slideInLeft') 

    $(".menu-over").animate({ 
    left: "-50%", 
    }, 1000); 

    $(".mainsite").animate({ 
    left: "0%", 
    width:"100%" , 
    }, 1000); 

    } else {// even clicks 

    $(this).find('i').toggleClass('fa-bars fa-times'); 
    $(this).toggleClass('cross'); 
    $('.menu-over ul li').toggleClass('animated-fast slideInLeft') 

    $(".menu-over").animate({ 
    left: "0%", 
    }, 1000); 

    $(".mainsite").animate({ 
    left: "50%", 
    width:"50%" , 
    }, 1000); 

    } 
    $(this).data("clicks", !clicks); 
}); 
}); 

回答

0

嘗試到return false在函數結束。問候

+0

感謝這些,不幸的是它仍然跳轉到頂端。我認爲它與引起它的奇怪/偶數點擊功能有關,但無法弄清楚它... –

+0

請顯示您的html –

0

你應該有.preventDefault()點擊事件中:

$('.menu-toggle').click(function(event) { 
     event.preventDefault(); 

,或者您可以使用return false;應該相同的方式工作,你的情況:

$('.menu-toggle').click(function(event) { 
     return false; 
+0

感謝您的這些,不幸的是既不工作。我認爲它與引起它的奇怪/偶數點擊功能有關,但無法弄清楚它... –

0

想通了。感謝所有的建議,但奇怪的是他們都沒有工作。這是導致它的.asite上的寬度動畫。改爲改爲填充效果,現在所有放置在放置時單擊。