私はマウスのためのイベントを変更しようとしている/フラッシュコンテンツを入力した後。マウスのスクロールがスクロールコンテンツ
フラッシュ上- - 私は、ウェブ上でのフラッシュカルーセル
- をスクロールしたい - 私は、Webコンテンツをスクロールしたい
私の問題は、次のとおりです。
異なるブラウザは、フラッシュ用の「フォーカス」が異なる与えますしたがって、イベントでは正しく起動されません:Event.MOUSE_LEAVE
、MouseEvent.MOUSE_OVER
。私はJSがMOUSE_OVERとMOUSE_LEAVEのためにトリガーされているが、これは動作していないようだ。
また、mouseWheelはブラウザに起因するものであり、フラッシュオブジェクトではありません。
のFirefox 4.xでは/ 5.0 - クローム12.0.742.112をクリックせずに、それらを適切に発射する - それはIE 9.0.1
JSのコードのように、「フォーカス」の交付後に発火やフラッシュオブジェクトをクリックしてください:
function stopWheel(e){
if(!e){ e = window.event; } /* IE7, IE8, Chrome, Safari */
if(e.preventDefault) { e.preventDefault(); } /* Chrome, Safari, Firefox */
e.returnValue = false; /* IE7, IE8 */
}
function player_enter(){
document.onmousewheel = function(){ stopWheel(); } /* IE7, IE8 */
if(document.addEventListener){ /* Chrome, Safari, Firefox */
document.addEventListener('DOMMouseScroll', stopWheel, false);
}
}
function player_leave(){
document.onmousewheel = null; /* IE7, IE8 */
if(document.addEventListener){ /* Chrome, Safari, Firefox */
document.removeEventListener('DOMMouseScroll', stopWheel, false);
}
}
変更できるものはありますか?
これは正しくありません。 MOUSE_WHEELイベントを追加しても、ウェブサイトのスクロールを防ぐことはできません – k107
ホイールを操作すると、それがウェブサイトに移動されず、スクロールが防止されます。 – TheBrain
これはAS2でのみ当てはまります。 AS3では、フラッシュとブラウザの両方がスクロールイベントを受け取ることはよく知られています。 http://code.google.com/p/mousewheeltrap/をご覧ください。実際にChrome + Macで問題を見つけているため、これを解決策として挙げていません。そのような状況では、ブラウザがスクロールしないようにしますが、Flashはイベントを受信しません。 – roguenet