2012-02-08 8 views
1

私はAriel Flesler's awesome scrollto pluginを使用しています。しかし、私はいつプラグインがスクロールを終了したのか判断したい。私のページでスクロール速度は800に設定されています。どうやってやるの?jQuery.ScrollToが滑らかなスクロールを完了したかどうかを判断する方法

私が試してみた:

 isScrolling = true; 
     jQuery(listWrapper).scrollTo(theId, 800); 
     isScrolling = false; 
をしかし、スクロールが完了する前に isScrolling = falseが設定されますかのように思えます。

これに加えて、scrolltoイベントにJavaScriptが添付されています。スクロールはスムーズなスクロールを行い、スクロールイベントを同時に実行しようとしているため、痛いスピードになります。スクロールしている間にスクロールイベントを有効に無効にし、スクロールが完了したらスクロールイベントを有効にしたいと考えていました。

答えて

3

プラグインは、アニメーションが終わったときに呼び出されるコールバック関数があります:あなたはthis scrollTo pluginを使用していると仮定すると、

onAfter: A function to be called after the whole animation ended. 
+0

私はドキュメンテーションhahaでそれを見ていませんでした。ありがとう! @Sorin S. – Hoppe

0

を、スクロールが完了した後に実行する関数を受け取りonAfterオプションがあります。

2

スクロールが完了した後にトリガーされるonAfterイベントを使用します。これは、コールバック関数としてscrollToプラグインの3番目の引数です。これを試して。

isScrolling = true; 
    jQuery(listWrapper).scrollTo(theId, 800, function(){ 
     isScrolling = false; 
    }); 
+0

サンプルコードをありがとう! @ShankarSangoli – Hoppe

+0

良い解決策.. – Farhan

関連する問題