您的位置:首页 > Web前端 > JavaScript

js鼠标滚轮事件详解(全兼容ie、chrome、firefox)实现图片缩放

2014-11-02 17:27 1001 查看
以前看到的都是用IE的zoom,所以非IE就不支持,昨天看到这个js中鼠标滚轮事件详解,于是完全兼容(IE6-8,FF,Chrome,Opera,Safari)的鼠标滚轴缩放图片效果今天就诞生了
====代码如下:

var zooming=function(e){

e=window.event ||e;

var o=this,data=e.wheelDelta ||e.detail*40,zoom,size;

if(!+'\v1'){

zoom = parseInt(o.style.zoom) || 100;

zoom += data / 12;

if(zoom > zooming.min)

o.style.zoom = zoom + '%';

}else {

size=o.getAttribute("_zoomsize").split(",");

zoom=parseInt(o.getAttribute("_zoom"))||100;

zoom+=data/12;

if(zoom>zooming.min){

o.setAttribute("_zoom",zoom);

o.style.width=size[0]*zoom/100+"px";

o.style.height=size[1]*zoom/100+"px";

}

}

};

zooming.add=function(obj,min){//第一个参数指定可以缩放的图片,min指定最小缩放的大小,default to 50

zooming.min=min || 50;

obj.onmousewheel=zooming;

if(/a/[-1]=='a')//if Firefox

obj.addEventListener("DOMMouseScroll",zooming,false);

if(-[1,]){//if not IE

obj.setAttribute("_zoomsize",obj.offsetWidth+","+obj.offsetHeight);

}

};

window.onload=function(){//放在onload中,否则非ie中会无法计算图片大小出错

zooming.add(document.getElementByIdx_x("testimg1"));

}

转载自:http://blog.sina.com.cn/s/blog_541557700100l209.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: