80 ミリ秒ごとにランダムな「固定」位置に DIV を作成する小さなコードを作成しました。この div は約 2 秒間表示され、その後 (生成されたコードを含めて) 削除されます。ただし、これが発生しているページの一部を離れる場合 (スクロールを使用); 発電機を止めてほしい。
また、ユーザーがスクロールを使用するたびにコードを実行するのを避けるために (スクロールのためにジェネレーターが重複します)、true/false ステートメントを使用するのが最も便利だと思いました。
if (focuson = true){window.setInterval(function(){$(generator);}, 80);}
$(window).scroll(function(){
if ($(window).scrollTop() > resolutieh){
var focuson = false;
window.clearInterval(generator); generator = 0;
}
else{
var focuson = true;
}
});
上記のコードは実際には機能しますが、視覚的な不具合が発生します。最後に生成された DIV が削除されたとき: その時点での画面のすべての部分、つまり div コンテンツで「埋められていない」部分は、大きな白いチャンク (基本的には x/y の繰り返しの「背景画像」) で埋められます。また、ジェネレーターがアクティブな場所までスクロールしても、再びアクティブ化されることはありません。
次のコードは、私にはより論理的に思えます (ただし、機能しません)。
if (focuson = true){window.setInterval(function(){$(generator);}, 80);}
if (focuson = false){window.clearInterval(function(){$(generator);}, 0);}
$(window).scroll(function(){
if ($(window).scrollTop() > resolutieh){
var focuson = false;;
}
else{
var focuson = true;
}
});
基本的に、ジェネレーターを「適切に」停止するか、タイマーを非常に低く設定して計算にかかる時間を短縮することにより、視覚的な不具合を回避したいと考えています。クールなボーナスは、ジェネレーターが生成されているページの部分に戻ると、再びオンになることです.
助言がありますか?
敬具。