★精品文档★
用HTML5实现鼠标滚轮事件放大缩小图片
功能
这篇文章主要介绍了用HTML5实现鼠标滚轮事件放大缩小图片的功能,其中 Safari浏览器用户要注意是否禁用了鼠标滚动控制页面滑动的功能,需要的朋友可以参考下
大部分浏览器都是支持鼠标滚轮事件的所以你可以先订阅鼠标滚轮事件的方法每当事件被触发时你能获取一个名为wheelDelta的属性它代表刚才鼠标滚轮改变的大小其中正值表示滚轮往下滑动负值表示滚轮往上滑动。数值的绝对值越大滑动范围越大。
但不幸的是依然有一款浏览器是不支持鼠标滚轮事件的。 那就是 FireFox。 Mozi l la 已经实现了一个名为”DOMMouseScrol l”的事件的处理它会传递一个名为event且附带了名为detai l属性的事件参数过来然而这个detai l属性不同于wheelDelta 它只能返回正值即只能坚持鼠标滚轮向下滚动的值。
你应该特别注意一下Apple公司在Safari浏览器中也禁用了鼠标滚动控制页面上下滑动但是此功能依然在webkit引擎中正常使用的所以你写的代码是不会触发什么问题的。
添加鼠标滚轮事件处理方法
首先我们在网页中添加一个图片待会就能用鼠标滚轮
1/4
★精品文档★
控制此图片的缩放
XML/HTML Code
< img id=“myimage” src=“myimage.jpg” alt=“myimage” /
现在来添加鼠标滚轮事件处理代码
XML/HTML Codevar myimage=document.getElementById(“myimage”); if (myimage.addEventListener) {
// IE9, Chrome, Safari , Opera
myimage.addEventListener(“mousewheel”,
MouseWheelHandler, false);
//Firefox
myimage.addEventListener(“DOMMouseScrol l”,
MouseWheelHandler, false);
}
// IE6/7/8 else myimage.attachEvent(“onmousewheel”,MouseWheelHandler);
2/4
★精品文档★
为了让不同浏览器都能支持的处理做法
在下面这个案例中我们将对F irefox的detai l值取反然后返回1或者-1的其中一个
XML/HTML Codefunction MouseWheelHandler(e) {
// cross-browser wheel delta
var e =window.event | | e; // old IEsupport
var delta =Math.max(-1 ,Math.min(1 ,(e.wheelDelta| | -e.detai l)));
现在我们直接决定图片的大小范围。以下代码将图片的宽度范围设置在50-800个像素之间
XML/HTML Code
myimage.style.width = Math.max(50,Math.min(800, myimage.width + (30 * delta))) + “px”;
return false;
}
最后一点我们在方法中返回fa lse是为了终止标准的鼠标滚轮事件处理以防它上下滑动网页。
3/4
★精品文档★
4/4
A400互联是一家成立于2020年的商家,本次给大家带来的是,全新上线的香港节点,cmi+cn2线路,全场香港产品7折优惠,优惠码0711,A400互联,只为给你提供更快,更稳,更实惠的套餐。目前,商家推出香港cn2节点+cmi线路云主机,1H/1G/10M/300G流量,37.8元/季,云上日子,你我共享。A400互联优惠码:七折优惠码:0711A400互联优惠方案:适合建站,个人开发爱好者配置...
官方网站:点击访问90IDC官方网站优惠码:云八五折优惠劵:90IDCHK85,仅适用于香港CLOUD主机含特惠型。活动方案:年付特惠服务器:CPU均为Intel Xeon两颗,纯CN2永不混线,让您的网站更快一步。香港大浦CN2測速網址: http://194.105.63.191美国三网CN2測速網址: http://154.7.13.95香港购买地址:https://www.90idc.ne...
易探云怎么样?易探云(yitanyun.com)是一家知名云计算品牌,2017年成立,从业4年之久,目前主要从事出售香港VPS、香港独立服务器、香港站群服务器等,在售VPS线路有三网CN2、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。目前,易探云推出免备案香港物理机服务器性价比很高,E3-1230 8 核*1/16G DDR3/SATA 1TB/香港BGP线路/20Mbps/不限流量,仅...