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" をクリックすると、すべてが読み込まれ、ウィンドウが正常にスクロールされます。すべての機能/アニメーションが完了すると、次にクリックするリンクが起動するまでに約 1 秒かかります。(それ以降はすべてのリンクに問題はありません。上記のスクリプトの後の最初のリンクです。[スクリプトがまだバックグラウンドで実行されているに違いないと考えさせられます。])

私はしばらくの間 jquery.stop をいじっていますが、今のところうまくいきません。APIドキュメントを読んでもjqueryが理解できないようです。.stop に関するヘルプをいただければ幸いです。ありがとう。

4

1 に答える 1

0

委任を使用しています。これを見てください。委任の例を探してください。それはあなたを助けるかもしれません。

于 2013-01-16T07:06:03.653 に答える