2013-01-16 89 views
0

這一小塊jquery導致一些有趣的事情發生在頁面上的所有其他鏈接,即,他們做任何他們應該做的事情,但只有在大約1第二。腳本導致鏈接有一個定時延遲

發生這種情況單擊運行下面的代碼中的鏈接後:

$('#content').on("click", "a#goto_faq", function() { 

    $("html, body").animate({ scrollTop: 0 }, 1234, 'easeInExpo'); 

    var toLoad = $(this).attr('href')+' #content'; 

    $('#content').delay(888).slideUp(888,'easeOutExpo',loadContent);   
    function loadContent() { 
     $('#content').load(toLoad,'',showNewContent); 
    } 
    function showNewContent() { 
     $('#content').slideDown(777,'easeInExpo'); 
    } 
    $("html, body").delay(777).animate({ scrollTop: 405 }, 777, 'easeInExpo',goToFAQ); 
    function goToFAQ() { 
    $("html, body").delay(2700).animate({ scrollTop: 1415 }, 2222, 'easeInOutExpo'); 
    } 
    return false; 

}); 

所以,你點擊一個ID =「goto_faq」,和一切加載和滾動窗口就好了。一旦所有的功能/動畫完成,無論你決定點擊哪一個鏈接,它將在它消失之前花費大約一秒的時間。 (從此以後所有鏈接都很好 - 這只是上述腳本之後的第一個腳本[它讓人認爲腳本仍然必須在後臺運行])

我一直在玩jQuery。現在停一段時間,但到目前爲止沒有運氣。我似乎無法通過閱讀API文檔來理解jquery。任何幫助與.stop將不勝感激;謝謝。

+0

這段代碼只能在一個元素上使用,因爲它使用了一個ID,而ID是唯一的? – adeneo

回答

0

您正在使用委派。看看this。尋找委派的例子。這可能會幫助你。

+0

對不起,應該進一步閱讀,文檔並沒有真正幫助你很多,在這裏我去鏈接一個文檔... – John

+0

如果我運行這個地方,我會強烈建議所有那些「看看文檔」類型的回覆(這個地方充斥着他們),因爲它通常是告訴某人他們懶惰/ stoopid或者只是不夠酷,無法與先進的stackoverflow書呆子掛在一起。如果我在這裏:是的,我搜索了它,是的,我閱讀了文檔,是的,我用相同的代碼搞了幾個小時。我只是一個左腦的傢伙 - 這就是爲什麼我來到這裏,向你諮詢左腦的人。困難在於左腦對右腦有偏見。 – user1691389