2009-08-13 126 views
2

我確定這是一個常見問題,但我在其他地方找不到答案。防止頁面在Flash對象內滾動時滾動

我有一個Flash對象嵌入長網頁。我在Flash中偵聽MOUSE_WHEEL事件,並相應地滾動我的Flash內容。但是,當我滾動Flash對象時,網頁也會滾動。

有沒有什麼辦法可以防止這種行爲,即當Flash對象有焦點時鎖定網頁的滾動位置?我寧願不必使用JavaScript。

+0

爲什麼不能用JavaScript? – 2009-08-14 00:31:16

回答

3

我不認爲這是不可能的,沒有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(); 
} 
+0

謝謝,我不知道你可以取消JavaScript中的事件 – Cameron 2009-08-14 22:32:00