2011-02-09 13 views
2

どのようにこれらの機能を順番に実行させることができますか?これらの機能を順番に実行するにはどうすればよいですか?

 $(window).unbind(); 

     $('.buyersseclink').removeClass('buyersseclinkon'); 

     $(this).parent().delay(900).addClass('buyersseclinkon'); 

     $(window).bind('scroll', function() { 
      $('.buyersseclink').removeClass('buyersseclinkon'); 
     }); 

おかげ

+0

可能重複[jqueryの同期機能](http://stackoverflow.com/questions/1774077/jquery-synchronous-functions) – CraigTP

+0

'は何$(この) '? – BoltClock

+0

@ BoltClockでは、スムーススクロールプラグインがトリガーされた後に関数が実行されます。 $(これ)はクリックされたリンクです。 https://github.com/kswedberg/jquery-smooth-scroll 私がしようとしているのは、リンクがクリックされたときです。私のアクティブスパンクラスのbuyersseclinkonがすべてのリンクから削除され、クリックした。これまでにウィンドウをスクロールするときに、アクティブなクラスを削除する必要があります。 – Evans

答えて

2

delay()は、addClessような方法では動作しません。 jQuery documentation suggestsとして、あなたは代わりにsetTimeoutを使用する必要があります。

$(window).unbind(); 

    $('.buyersseclink').removeClass('buyersseclinkon'); 

    var current = this; // Store reference, because in the setTimeout callback "this" maybe referring to something else 

    window.setTimeout(function() { 
    $(current).parent().addClass('buyersseclinkon'); 
    $(window).bind('scroll', function() { 
     $('.buyersseclink').removeClass('buyersseclinkon'); 
    }); 
    }, 900); 
+0

@RoToRa遅れは私の考えの周りの1つの仕事でしたが、基本的に私は4つの機能を持っていて、前のものが終了した後にそれぞれを実行する必要があります。これはできますか?私は標準的な方法があると仮定しましたが、jqueryにはかなり新しいです。ありがとう – Evans

+0

他の機能は、それがそうであるように連続的に実行されるべきです。これらは非同期ではありません。 – RoToRa

+0

働いてくれてありがとう。興味のないところから、なぜ機能のいくつかは連続して実行されているのですか? – Evans

関連する問題