2011-09-09 12 views

答えて

2

無効にする必要があるすべてのイベントを制御する場合は、グローバル変数を「ロック」として使用することができます。アニメーション(およびこのフラグがトリガーされた場合はすべてのイベントを中止します)を終了し、終了するとその設定を解除します。

Javascriptはではありません(タイミングの問題や「実際の」ロックを心配する必要はありませんが)フェーディングではシーンの背後でsetTimeoutを使用することがあります。 。このような場合は、ちょうどあなたがアニメーションが

var lock = false; 
function my_event_handler(evt){ 
    if(lock) return; //someone else is using the lock; 
    //perhaps cancel event propagation as well? 

    lock = true; 

    dojo.anim({ 
     ... 
     onEnd: function(){ 
      lock = false; 
     } 
    }); 
} 

オーバーの警告であるとき、適切に検出するために、onEndコールバックを使用する必要がありますことを忘れないでください:これは私の頭の上から擬似コードです。私はしばらくのうちにdojoのアニメーションを使用していない場合は、すでに気づいていない:P

+0

こんにちはこれは私が感謝したことです。 – Darren

1

私は私はあなたがここでのイベントで何を意味するのか理解していないが、あなたはページの要素との相互作用を防止したい場合、あなたはモーダルシールドを設置することができます...基本的に透明DIV要素を使ってコンテンツを高いZインデックスで配置する

関連する問題