|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
随着高端手机(Andriod,Iphone,Ipod,WinPhone等)的盛行,移动互联应用开发也越来越受到人们的重视,用html5开发移动应用是最好的选择。破洛洛文章简介:HTML5是怎样利用鼠标滚轮事务的.
HTML5网页中增加鼠标滚轮事务可以更好的让用户与网页举行交互操纵。而在HTML5中,鼠标滚轮其实不仅仅就只能高低滑动网页,实践上你还能够依托这个完成更多的功效,好比视野立体的缩小与减少。
年夜部分扫瞄器都是撑持鼠标滚轮事务的,以是你能够先定阅鼠标滚轮事务的办法,每当事务被触发时,你能猎取一个名为wheelDelta的属性,它代表方才鼠标滚轮改动的巨细,个中正值暗示滚轮往下滑动,负值暗示滚轮往上滑动。数值的相对值越年夜,滑动局限越年夜。
但不幸的是仍然有一款扫瞄器是不撑持鼠标滚轮事务的。那就是FireFox。Mozilla已完成了一个名为"DOMMouseScroll"的事务的处置,它会传送一个名为event且附带了名为detail属性的事务参数过去,但是,这个detail属性分歧于wheelDelta,它只能前往正值,即只能保持鼠标滚轮向下转动的值。
你应当出格注重一下,Apple公司在Safari扫瞄器中也禁用了鼠标转动把持页面高低滑动,可是此功效仍然在webkit引擎中一般利用的,以是你写的代码是不会触发甚么成绩的。
增加鼠标滚轮事务处置办法
起首我们在网页中增加一个图片,待会就可以用鼠标滚轮把持此图片的缩放
如今来增加鼠标滚轮事务处置代码
varmyimage=document.getElementById("myimage");
if(myimage.addEventListener){
//IE9,Chrome,Safari,Opera
myimage.addEventListener("mousewheel",MouseWheelHandler,false);
//Firefox
myimage.addEventListener("DOMMouseScroll",MouseWheelHandler,false);
}
//IE6/7/8
elsemyimage.attachEvent("onmousewheel",MouseWheelHandler);
为了让分歧扫瞄器都能撑持的处置做法
鄙人面这个案例中,我们将对Firefox的detail值取反然后前往1大概-1的个中一个
functionMouseWheelHandler(e){
//cross-browserwheeldelta
vare=window.event||e;//oldIEsupport
vardelta=Math.max(-1,Math.min(1,(e.wheelDelta||-e.detail)));
如今我们间接决意图片的巨细局限。以下代码将图片的宽度局限设置在50-800个像素之间
myimage.style.width=Math.max(50,Math.min(800,myimage.width+(30*delta)))+"px";
returnfalse;
}
最初一点,我们在办法中前往false是为了停止尺度的鼠标滚轮事务处置,以防它高低滑动网页。
</p>
有些差异相对轻微,有充分的理由将这两种HTML5规范草案合并为一,让浏览器制造商与网络开发者不必面对不兼容的窘境。 |
|