2017-06-14 7 views
0

私は以下のいくつかの行を書いた関数を実行window.onscroll私は同じに条件ならば変更してみましたは何回も

ページ上の3つの円を、apperingそれはあなたが任意のアイデアを持っている場合

+1

を 'onscroll'が毎秒数回の発射は、[デバウンサ](https://stackoverflow.com/a/4298672/1169519)が必要です。または、質問を再読み込みするときには、ハンドラ関数の最後に 'window.onscroll'を' null'に設定してください... – Teemu

+0

nulling window.onscrollは完全にうまくいきました。 – artjuzwik

+0

関数=を参照するように設定するのは悪くありません。イベントリスナーを削除するだけです。 – Teemu

答えて

0

あなたの現在の機能は3円あなたがスクロールするたびに作成されます助けてください、助けをdoesntの。

MAX 3つの円を使用する場合は、以下の変更を行います。

var _countCirlces =0; // initial circles count 
function testScroll(ev){ 

    if(window.pageYOffset>400) { 
     // create 1 circle for each scroll + increment _countCircles 
     newCircle(circle[x],circleId[x],startColorId[x],endColorId[x]); 
     _countCircles++; 

    };return; 

}; 

window.onscroll=testScroll; 
0
var _circleCount = 0; 

function testScroll(ev) { 

    if(window.pageYOffset>400 && _circleCount < 2) { 
     for (var x=0; x<=2; x++) { 
      newCircle(circle[x], circleId[x], startColorId[x], endColorId[x]); 
      _circleCount++; 
     }; 
    }; 
    return; 
}; 

window.onscroll = testScroll; 
関連する問題