我敢肯定,这必须是一个常见的问题,但我还没有找到一个答案别处。
我有嵌入在网页长Flash对象。 我听Flash中的MOUSE_WHEEL事件,并相应地滚动我的Flash内容。 然而,当我在滚动Flash对象,网页也滚动。
有什么办法防止这种行为,即锁定网页的滚动位置时,Flash对象具有焦点? 我不希望有使用JavaScript。
我敢肯定,这必须是一个常见的问题,但我还没有找到一个答案别处。
我有嵌入在网页长Flash对象。 我听Flash中的MOUSE_WHEEL事件,并相应地滚动我的Flash内容。 然而,当我在滚动Flash对象,网页也滚动。
有什么办法防止这种行为,即锁定网页的滚动位置时,Flash对象具有焦点? 我不希望有使用JavaScript。
我不不认为这是可能没有JavaScript。
您需要从Flash影片传达给使用浏览器的ExternalInterface每当Flash影片将焦点更改。
然后,对网页陷阱的JavaScript函数,吃鼠标滚轮事件:
if (window.addEventListener)
/** DOMMouseScroll is for mozilla. */
window.addEventListener('DOMMouseScroll', handleWheelEvent, false);
/** IE/Opera. */
window.onmousewheel = document.onmousewheel = handleWheelEvent;
function handleWheelEvent(e){
e.preventDefault();
}
这里是不需要JavaScript的一个很好的解决方案:
http://www.spikything.com/blog/index.php/2009/11/27/stop-simultaneous-flash-browser-scrolling/
(从技术上讲,它使用JavaScript,但JavaScript是由Flash注入,所以你不需要添加任何东西给自己的HTML页面。换句话说,你需要管理的唯一代码为AS3)。
这似乎是每一个浏览器我测试过努力。