横にスクロールしたり、「新しいページ」のボタンを使用したりできる Web ページを作成しています (注: ボタンを使用すると、前のページをすばやくスライドでき、新しいページは読み込まれません)。
指定したページが表示されると、フラッシュで作成したアニメーションがトリガーされます。私はそれをswiffy経由で変換しましたが、うまくいきました。アニメーションのトリガーは正常に機能しますが、問題は次のとおりです。たとえば、アニメーションのあるページの後にページに移動するボタンを押すと、一度表示されているため、「ページ」は引き続きトリガーされます。
今、timeOut を使用してアニメーションを遅延させようとしています。これにより、スクロールしても、ページに X 秒以上留まっている場合を除いてトリガーされません。
これが私の現在のスクリプトです:
var $AnimatieAan = false;
var $Zichtbaar = false;
$(window).scroll(function(){
$e = $('#searchEngine');
var visible = $(window).scrollLeft()+window.innerWidth>$e.offset().left&&$(window).scrollLeft()<$e.offset().left+$e.width();
if(visible)
{
$Zichtbaar = true;
var Timer = setTimeout(function()
{
console.log('timerstart');
if($Zichtbaar)
{
//$Zichtbaar = true;
console.log($Zichtbaar)
$AnimatieAan = true;
$Zichtbaar = false;
if($AnimatieAan)
{
var stage = new swiffy.Stage(document.getElementById('searchEngine'), mexaleSearch);
stage.start();
console.log(visible);
$AnimatieAan = false;
}
else
{
clearTimeout(Timer);
console.log('clearTimeout');
$Zichtbaar = false;
$AnimatieAan = false;
stage.stop();
}
}
} , 2000 );
}
スクロールがどのように機能するかについての明確化。実際のバージョンは www.mexale.com にあります。
どんな助けでも大歓迎です!