js滑鼠滾動事件

2021-06-19 00:51:56 字數 1363 閱讀 2753

其中經我測試,ie/opera屬於同一型別,使用attachevent即可新增滾輪事件。

/*ie註冊事件*/

if(document.attachevent)

firefox使用addeventlistener新增滾輪事件

/*firefox註冊事件*/

if(document.addeventlistener)

safari與chrome屬於同一型別,可使用html dom方式新增事件

window.onmousewheel=document.onmousewheel=scrollfunc;//ie/opera/chrome

其中除firefox外其餘均可使用html dom方式新增事件,因此新增事件使用以下方式

/*註冊事件*/

if(document.addeventlistener)//w3c

window.onmousewheel=document.onmousewheel=scrollfunc;//ie/opera/chrome

detail與wheeldelta

判斷滾輪向上或向下在瀏覽器中也要考慮相容性,現在五大瀏覽器(ie、opera、safari、firefox、chrome)中firefox 使用detail,其餘四類使用wheeldelta;兩者只在取值上不一致,代表含義一致,detail與wheeldelta只各取兩個 值,detail只取±3,wheeldelta只取±120,其中正數表示為向上,負數表示向下。

code highlighting produced by actipro codehighlighter (freeware)> 1 滾動值:(ie/opera)

滾動值:(firefox)

案例二:

//滑鼠滾動事件呼叫的方法

/***********************

* 函式:判斷滾輪滾動方向

* 返回:滾輪方向 1:向上 -1:向下

*************************/

var scrollfunc=function(e)else

}else if(e.detail)else}}

/*註冊事件*/

if($("#mapinfoimg")[0].addeventlistener)//w3c

$("#mapinfoimg")[0].onmousewheel=$("#mapinfoimg")[0].onmousewheel=scrollfunc;//ie/opera/chrome

設定滑鼠滾動事件

當qscrollview內容過多出現滾動條時,此時如果把滑鼠移到裡面的乙個button上並滾動滑輪時,可以看到qscrollview並不會出現滾動的情況,因此我們就需要為button新增乙個滾動事件 注 subtitlepushbutton繼承於qpushbutton,自定義的乙個button類,然...

JS 滑鼠事件

定位滑鼠位置 1 在瀏覽器可視視窗的位置 eventutil.addhandler div,click function event 2 在整個頁面的視窗的位置 當頁面沒有滾動條時跟1的值一致 注意 在ie8及更早版本不支援pagex和pagey,可以通過document.body 混雜模式 或者d...

滑鼠滾輪滾動事件wheel

滑鼠的滾輪事件主要有兩種 deltay detail wheeldelta deltamode detail deltax,滑鼠滾輪左右擺動,本屬性是唯讀的。負值,向左 正值,向右。正負方向,跟系統的x座標保持一致。deltay,滑鼠滾輪上下滾動,唯讀。負值,向上 正值,向下。deltamode,屬...