Untitled
By: a guest | May 30th, 2010 | Syntax:
JavaScript | Size: 1.88 KB | Hits: 370 | Expires: Never
/**
*put 置入元素的一些设置
*Magn 放大镜元素的一些设置
*imgurl 图片的地址
*pro 放大的比例
*/
var Magnifier=function(Put,Magn,imgurl,proportion){
this.put=Put;
this.mag=Magn;
this.url=imgurl;
this.pro=proportion;
}
Magnifier.prototype={
'Magnifier':function(){
var M=this;
var Put=document.createElement('div');
var Pimg=document.createElement('img');
Put.appendChild(Pimg);
var put=document.getElementById(M.getvalue('put','id'))
put.appendChild(Put);
var Magn=document.createElement('div');
var Mimg=document.createElement('img')
Magn.appendChild(Mimg);
var mag=document.getElementById(M.getvalue('mag','id'))
mag.appendChild(Magn);
Pimg.onload=function(){
var w=Pimg.clientWidth;
var h=Pimg.clientHeight;
Pimg.style.height=h*M.pro+'px';
Pimg.style.width=w*M.pro+'px';
}
Pimg.src=M.url;
Mimg.src=M.url;
Magn.style.cssText='position:relative;width:'+M.getvalue('mag','width')+'px;height:'+M.getvalue('mag','height')+'px;overflow:hidden;'
Mimg.style.cssText='position:absolute;left:0px;top:0px;'
put.style.position='relative';
put.onmousemove=function(e){
var x,y;
var e = e||window.event;
var offsetX = e.offsetX ? e.offsetX : e.layerX;
var offsetY = e.offsetY ? e.offsetY : e.layerY;
x=offsetX;
y=offsetY;
if(isNaN(x)) x=0;
if(isNaN(y)) y=0;
Mimg.style.top = '-'+parseInt(y/M.pro-M.getvalue('mag','height')/2)+'px';
Mimg.style.left = '-'+parseInt(x/M.pro-M.getvalue('mag','width')/2)+'px';
document.getElementById('c').innerHTML=x+','+y; /*如果你用的话记得注掉*/
}
},
'getvalue':function(id,name){
var M=this;
return M[id][name];
}
}
var magn = new Magnifier({'id':'a'},{'id':'b','width':100,'height':100},'006.gif',0.5);
magn.Magnifier();