2010-03-31 74 views
3

我的頁面上有一個Flash元素,您可以使用鼠標中鍵滾動鼠標來進行交互。該頁面很長。所以當用鼠標滾輪滾動時,它與Flash元素交互並且滾動瀏覽器窗口。使用鼠標中鍵滾動按鈕禁用瀏覽器滾動

有沒有辦法在Flash元素處於活動狀態時禁用瀏覽器滾動?

回答

5

您可以使用:

document.body.style.overflow=allowScroll?"":"hidden"; 

凡allowScroll是一個布爾值。

+0

很簡單,我應該想到這一點我自己。現在我正在懶惰!因此,要完成腳本,禁用瀏覽器滾動時,只需啓用allowScroll = true/false。謝謝! – 2010-04-01 05:09:28

12
<!-- disables browser mouse scrolling --> 
<script type="text/javascript"> 
if(window.addEventListener){ 
    window.addEventListener('DOMMouseScroll',wheel,false); 
} 

function wheel(event) 
{ 
    event.preventDefault(); 
    event.returnValue=false; 
} 
window.onmousewheel=document.onmousewheel=wheel; 
</script> 

我有 「提取」 從Flash MouseWheelTrap此功能,可以在這裏找到: http://code.google.com/p/mousewheeltrap/

+0

我更喜歡這個解決方案,因爲它也允許通過拖動中間按鈕來阻止滾動。 – Kos 2011-08-30 21:10:19

2
window.onscroll = function() { 
    document.body.scrollTop = 0; 
}