キャンバスと EaselJS を使用してゲームを構築していますが、ウィンドウ フォーカスを削除する onclick 内で何かを行うと問題が発生します。プロンプト、アラート、window.open。
これは、FireFox と、私が見た一部のモバイル Android デバイスで発生します。
理由は理解できたと思いますが、修正方法がわかりません(一文で説明する方法がわからなかったので、この質問のタイトルは完全に真実ではありません)
そのようなonclick内にアラートがある場合
_t.container.on('click', function(e) {
alert('test');
//end
e.preventDefault();
e.nativeEvent.preventDefault();
return false; //all of these added when trying to find a work around
});
//問題を再現する方法
ターゲットをクリックすると、アラートが発生し、マウスをどこにでも移動します (まだキャンバス上にあります) Enter キーを押してアラートを閉じます。次に、マウスの位置に関係なく、移動するまで、クリックすると同じイベントが発生します。 、そして再びアラート....
これは実際にはモバイル デバイスでのみ問題になります。「マウス」を移動/タッチ位置を更新できないため、次に画面をタップすると常に 2 番目の onclick が発生しますが、デスクトップでは、アラート。
これは CreateJS ライブラリ自体の問題だと思います。これは、クリック イベントとアラートの例にこの問題があるためです。
createjs に強制的に mouseposition を 0,0 に設定させる方法があるのではないかと考えていました
問題が見つかる例を次に示します。
http://www.ajohnstone.com/test/hackday/CreateJS-EaselJS-b262a85/tutorials/Mouse%20Interaction/