我正在尝试在离开/输入Flash内容后更改鼠标滚轮的事件。
我的问题是:
不同的浏览器为flash元素提供不同的“焦点”,因此在事件中未正确触发:Event.MOUSE_LEAVE
,MouseEvent.MOUSE_OVER
。我为MOUSE_OVER和MOUSE_LEAVE触发了JS,但这似乎不起作用。
此外,mouseWheel归因于浏览器,而不是flash对象。
Firefox 4.x / 5.0 - 无需点击即可正常触发它们 Chrome 12.0.742.112 - 在授予“焦点”或点击flash对象后触发,如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);
}
}
我有什么可以改变的吗?
答案 0 :(得分:-1)
addEventListener(MouseEvent.MOUSE_WHEEL, handleMouseWheel);