导航:首页 > 编程语言 > 实现放大镜的代码

实现放大镜的代码

发布时间:2022-09-19 21:32:13

『壹』 放大镜代码

这个涉及到Flash的安全沙箱问题,flash是不能跨域访问的;

flash源文件是http://flash.picturetrail.com/pflicks/magnifier_r.swf,它只能访问picturetrail.com这个域名下的图片,所以用本地图片会报错的。

总之,你这个flash是不能改用其他图片的,除非你把图片放到picturetrail.com这个域名的服务器上。

『贰』 网页放大镜代码

留下个地址 我发给你[email protected]

『叁』 javascript放大镜代码

同命相连,我也在找这个效果,失望啊!

发现有教程,可是运行不起来,看你会吗?

picclass.asp 图片处理类文件
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<%
'//////////// GPS:Get Picture Size //////////////
'//////////////利用ADODB.stream获取图片尺寸//////////////
'/////////Cited By Leon(心晴) 2005年8月11日//////////
Class GPS
Dim aso
Private Sub Class_Initialize
Set aso=CreateObject("Adodb.Stream")
aso.Mode=3
aso.Type=1
aso.Open
End Sub

Private Sub Class_Terminate
set aso=nothing
End Sub

Private Function Bin2Str(Bin)
Dim I, Str
For I=1 to LenB(Bin)
clow=MidB(Bin,I,1)
if AscB(clow)<128 then
Str = Str & Chr(ASCB(clow))
Else
I=I+1
if I <= LenB(Bin) then Str = Str & Chr(ASCW(MidB(Bin,I,1)&clow))
end If
Next
Bin2Str = Str
End Function

Private Function Num2Str(num,base,lens)
'GPS (2005-8-11)
dim ret
ret = ""
while(num>=base)
ret = (num mod base) & ret
num = (num - num mod base)/base
wend
Num2Str = right(string(lens,"0") & num & ret,lens)
End Function

Private Function Str2Num(str,base)
'GPS (2005-8-11)
dim ret
ret = 0
for i=1 to len(str)
ret = ret *base + cint(mid(str,i,1))
next
Str2Num=ret
End Function

Private Function BinVal(bin)
'GPS (2002-8-11)
dim ret
ret = 0
for i = lenb(bin) to 1 step -1
ret = ret *256 + ascb(midb(bin,i,1))
next
BinVal=ret
End Function

Private Function BinVal2(bin)
'GPS (2002-8-11)
dim ret
ret = 0
for i = 1 to lenb(bin)
ret = ret *256 + ascb(midb(bin,i,1))
next
BinVal2=ret
End Function

'///以下是调用代码///
Function getImageSize(filespec)
'GPS (2002-8-11)
dim ret(3)
aso.LoadFromFile(filespec)
bFlag=aso.read(3)
select case hex(binVal(bFlag))
case "4E5089":
aso.read(15)
ret(0)="PNG"
ret(1)=BinVal2(aso.read(2))
aso.read(2)
ret(2)=BinVal2(aso.read(2))
case "464947":
aso.read(3)
ret(0)="GIF"
ret(1)=BinVal(aso.read(2))
ret(2)=BinVal(aso.read(2))
case "535746":
aso.read(5)
binData=aso.Read(1)
sConv=Num2Str(ascb(binData),2 ,8)
nBits=Str2Num(left(sConv,5),2)
sConv=mid(sConv,6)
while(len(sConv)<nBits*4)
binData=aso.Read(1)
sConv=sConv&Num2Str(ascb(binData),2 ,8)
wend
ret(0)="SWF"
ret(1)=int(abs(Str2Num(mid(sConv,1*nBits+1,nBits),2)-Str2Num(mid(sConv,0*nBits+1,nBits),2))/20)
ret(2)=int(abs(Str2Num(mid(sConv,3*nBits+1,nBits),2)-Str2Num(mid(sConv,2*nBits+1,nBits),2))/20)
case "FFD8FF":
do
do: p1=binVal(aso.Read(1)): loop while p1=255 and not aso.EOS
if p1>191 and p1<196 then exit do else aso.read(binval2(aso.Read(2))-2)
do:p1=binVal(aso.Read(1)):loop while p1<255 and not aso.EOS
loop while true
aso.Read(3)
ret(0)="JPG"
ret(2)=binval2(aso.Read(2))
ret(1)=binval2(aso.Read(2))
case else:
if left(Bin2Str(bFlag),2)="BM" then
aso.Read(15)
ret(0)="BMP"
ret(1)=binval(aso.Read(4))
ret(2)=binval(aso.Read(4))
else
ret(0)=""
end if
end select
ret(3)="width=""" & ret(1) &""" height=""" & ret(2) &""""
getimagesize=ret
End Function
End Class
%>

图片调用文件----------------------------------------------------------------------------------------------------------

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include file="picclass.asp"-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<SCRIPT LANGUAGE="JAVASCRIPT">
<!--
function maxview(){
if (window.screen){
var w=screen.availwidth;
var h=screen.availheight;
window.moveTo(0,0);
window.resizeTo(w,h);
}
}
// -->
</SCRIPT>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<SCRIPT src="zoom.js" type=text/javascript></SCRIPT>
</head>
<body onLoad="maxview(); OnLoadMainFunction();">
<table width="905" border="0" align="center" cellpadding="15" cellspacing="1">
<tr>
<td valign="top" bgcolor="#FFFFFF"><table width="100%" border="0" cellspacing="15"

cellpadding="0">
<tr>
<td valign="top">
<%
if request("showid")<>"" then
sql="update lei_proct set dianjishu=dianjishu+1 where id="&(request("showid"))
conn.execute(sql)
set rs=server.CreateObject("adodb.recordset")
showstr="select * from lei_proct where id="& (request("showid"))
rs.open showstr,conn,1,1
if not rs.bof and not rs.eof then
'/////获取ShowImg.asp的绝对路径/////
Dim curFile
curFile=Server.mappath(Request.servervariables("PATH_INFO"))

Dim curfilename,filename

'/////图片相对路径(存于数据库中)
'cufilename=rs("ImgURL")
cufilename="../admin/upimg/"&rs("bigimg2")
cufilename2="../admin/upimg/"&rs("bigimg")
'/////因为ShowImg.asp与images在同一目录,所以我们用instrrev获取images的路径/////
filename=left(curFile,instrrev(curFile,"\"))&cufilename
filename2=left(curFile,instrrev(curFile,"\"))&cufilename2

'/////建立GPS类实体/////
Dim GetPicSize
Set GetPicSize=new GPS

Set fs=Server.CreateObject("Scripting.FileSystemObject")
'/////获取图片类型/////
Dim PicSuffixName
Dim PicSuffixName2
if (fs.FileExists(filename)=false) then
Response.Write("<script>alert('文件加载失败,请确认文件是否存在');history.back(-1);</script>")
Response.End()
end if
if (fs.FileExists(filename2)=false) then
Response.Write("<script>alert('文件加载失败,请确认文件是否存在');history.back(-1);</script>")
Response.End()
end if
PicSuffixName=fs.GetExtensionName(filename)
PicSuffixName2=fs.GetExtensionName(filename2)

Dim PD '//Picture Dimension
Dim PD2 '//Picture Dimension
Dim PWidth,PHeight
Dim PWidth2,PHeight2
PD=GetPicSize.GetImageSize(filename)
PD2=GetPicSize.GetImageSize(filename2)
PWidth=PD(1) '//获取图片宽度
PWidth2=PD2(1) '//获取图片宽度
PHeight=PD(2) '//获取图片高度
PHeight2=PD2(2) '//获取图片高度
Set fs=Nothing
Set GetPicSize=Nothing
%>

<SCRIPT type=text/javascript>
var usezoom = 1;
var itemimagedir = '';
var zoom_bigimagediv = 'bigimagediv';
var zoom_bigimagetablediv = 'bigimagetablediv';
var zoom_highlightdiv = 'highlightdiv';
var zoom_bigimageouterdiv = 'bigimageouterdiv';
var zoom_viewportwid = 400;//大图图片显示区域
var zoom_viewporthei = 320;//大图片显示区域

var zoom_mainimagewid = <%=PWidth2%>;//小图宽
var zoom_mainimagehei = <%=PHeight2%>;//小图高
var zoom_mainimageurl = '../admin/upimg/<%=rs("bigimg2")%>';

var zoom_zoomimagewid = <%=PWidth%>;//原图大小宽
var zoom_zoomimagehei = <%=PHeight%>;//原图大小高
var zoom_zoomimageurl = '../admin/upimg/<%=rs("bigimg2")%>';//大图地址

var zoom_bigimagetablexoffset = 1;
var zoom_bigimagetableyoffset = 21;
var zoom_displayxposition = 0;
var zoom_displayyposition = 0;
var zoom_miniimagex = 0;
var zoom_miniimagey = 0;
var zoom_highlightbgcolor = 'ffffff';
var zoom_highlightimage = 'highlight.gif';
function GetZoomObjectData() {
var position;

if (!InIE && !InNS6 && !DOMCompatible)
return;

position = MeMSOObjectGetPosition('mainimage');
zoom_miniimagex = position.x;
zoom_miniimagey = position.y;

position = MeMSOObjectGetPosition('locatezoomim');
zoom_displayxposition = position.x;//显示图片的位置
zoom_displayyposition = position.y - 21;

Zoom_StartupZoomRegion();
}

onloadlist += 'GetZoomObjectData();';
</SCRIPT>

<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1">
<tr>
<td bgcolor="#FFFFFF"> <div align="center">
<table cellspacing="0" cellpadding="0" width="100%" border="0">
<tbody>
<tr>
<td valign="center" align="middle" rowspan="4"><table cellspacing="1"

cellpadding="2" width="<%=PWidth2%>"
bgcolor="#efe6dd" border="0" height="<%=PHeight2%>">
<tbody>
<tr>
<td bgcolor="#ffffff"><img
src="..\admin\upimg\<%=rs("bigimg")%>" name="mainimage"
border="0" width="<%=PWidth2%>" height="<%=PHeight2%>"

id="mainimage" /></td>
</tr>
</tbody>
</table>
<br />
<a href="#" target="_blank">点击看大图</a></td>
<td valign="bottom" align="left" height="5"><img height="5"
src="dot_line.gif" width="401" /></td>
</tr>
<tr>
<td valign="bottom" align="left" width="420" height="1"><table cellspacing="0"

cellpadding="0" width="100%"
border="0">
<tbody>
<tr>
<td colspan="2"><img id="locatezoomim" height="1"
src="dot_1.gif" width="1"
name="locatezoomim" /></td>
</tr>
</tbody>
</table></td>
</tr>
<tr>
<td valign="top" align="left" width="425"
background="bigImg.gif"
height="330"><p> </p></td>
</tr>
<tr>
<td align="middle"><div id="highlightdiv"
style="Z-INDEX: 2; LEFT: -2000px; POSITION: absolute; TOP: -2000px;

visibility: hidden;"></div>
<div id="bigimageouterdiv"
style="Z-INDEX: 4; LEFT: -2000px; VISIBILITY: visible; OVERFLOW:

hidden; WIDTH: 300px; POSITION: absolute; TOP: -2000px; HEIGHT: 300px">
<div id="bigimagediv"
style="Z-INDEX: 4; LEFT: -2000px; POSITION: absolute; TOP: -2000px;

visibility: hidden;"><img
id="mainzoomimage" height="2400" src="" width="800" border="0"
name="mainzoomimage" /></div>
</div>
<div id="bigimagetablediv" style="Z-INDEX: 3; LEFT: -2000px; POSITION:

absolute; TOP: -2000px; visibility: hidden;"></div></td>
</tr>
</tbody>
</table>
</div>
<div align="right"></div></td>
</tr>
</table>
<%end if
rs.close
set rs = nothing
%>
<%end if
%>
</td>
</tr>
</table></td>
</tr>
</table>
<table width="905" height="8" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td></td>
</tr>
</table>
</body>
</html>

『肆』 unity3d实现放大镜的代码

你是要怎样实现呢?
有很多途径的
双摄像机可以这样做
首先添加一个摄像机,把它放在内主摄像机和目标之间容,然后将摄像机的
normalized view ...属性调整你需要放大镜摆放的位置
比如 x=0.5 y=0.5 w=1 h=1,然后运行就可以看到放大了的cube
然后需要放大镜显示的时候切换一下摄像机就行了

『伍』 flash 放大镜代码解释

注意我已经修改
时间轴有两层,第一层背景image,这是影片剪辑影片剪辑的代码,影片剪辑也有两层,第一层图onClipEvent
(enterFrame)
{
//鼠标跟随,就是你的放大镜影片剪辑的坐标,跟着你鼠标坐标移动;
//这样代码可以起到缓冲作用,如果直接这样:this_x=_root_xmouse;this_y=_root_ymouxe;
这样就没有缓冲效果;
//哎呀,现在都用AS3了,你还用AS2,嘿嘿
movex
=
(_root._xmouse
-
this._x)
/
speed;
overx
=
overx
+
movex;
this._x
=
this._x
+
Math.round(overx
+
movex);
movey
=
(_root._ymouse
-
this._y)
/
speed;
overy
=
overy
+
movey;
this._y
=
this._y
+
Math.round(overy
+
movey);
//以下代码作用是你的放大镜随着你的鼠标移到哪里,哪里就出现放大效果;
//当然,也和上面一样不是一下子就放大,也是有点缓冲
image._xscale
=
image._xscale
+
(scalex
-
image._xscale)
/
speed;
image._yscale
=
image._yscale
+
(scaley
-
image._yscale)
/
speed;
//以下代码:当前显示容器就是你的影片剪辑中image的X坐标=(舞台image的X坐标-放大镜X坐标)*(当前显示容器image的宽度/舞台image的宽度);剩下一行,就不用解释了
//这样做的目的是:出现放大效果时,你的放大的地方,就是该放大的地方,因为如果没有这代码,image放大时,它的相对坐标会移动,即放大了不该放大的地方。
image._x
=
(_parent.image._x
-
this._x)
*
(image._width
/
_parent.image._width);
image._y
=
(_parent.image._y
-
this._y)
*
(image._height
/
_parent.image._height);
}
//最后:如果你想学FLash脚步语言,那就学AS3,因为AS3相对AS2很强大。
呵呵
假如两个image坐标都为0,0;假如放大的倍数为2.5
假如你这时放大镜的坐标为100,100,你应该放大的地方当然也是100,100
当放大时,你的代码image._width
/
_parent.image._width=2.5
影片剪辑里image的宽度和高度都放大500/200=2.5倍,
即放大后你应该放大的坐标变为100*2.5,100*2.5;但是你的放大镜此时的坐标还是100,100
所以,你必须让影片剪辑里image的坐标移动(-250,-250),也就是
(_parent.image._x
-
this._x)
*
(image._width
/
_parent.image._width)=-250
(_parent.image._y
-
this._y)
*
(image._height
/
_parent.image._height)=-250
嘿嘿i,这下分可以给我了吧

『陆』 vb 麻烦老师给改个放大镜代码

Windows里面不是有放大镜么

『柒』 HTML5中,如何为图片制作放大镜效果

制作图片的放大效果我考虑到的方法是将原始图片绘制到canvas上,然后在对canvas进行局部裁剪最后对裁剪的部分进行放大,这样就可以实现放大镜的效果。

这里我给出一个实现这个想法的示例。该示例实际上就是运用HTML5canvas中对画布进行裁剪与保存画布状态的相关知识实现的。

上面是给出示例的效果图。这是不是你想要的放大镜效果呢?

下面我们来看下示例代码:在这个示例中当你点击图片时图片就会出现上图效果,再一次点击时就变成原始图片了。

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>放大镜</title>

<!—HTML代码设计:一个简单的canvas元素-->

</head>

<body>

<div id="result-stub" class="well hidden">

<canvas id="canvas" width="345" height="345">

<p>你的浏览器不支持canvas元素</p>

</canvas>

</div>

<script>

window.onload=function() {

//获取canvas对象以及图片对象

var

canvas = document.getElementById('canvas'),

img = new Image(),

context = null,

dataUrl = null,

//设置一个标记,该标记的作用是控制我们点击canvas时放大镜效果的消失和出现

isMagnified = false,

//init函数只要是在图片加载时绘制出图形

init = function() {

img.onload = function() {

//绘制原始图片

context.drawImage(img, 0, 0);

//将图片信息转化为二进制信息或者URL信息存储在dataUrl中方便后面调用

dataUrl = canvas.toDataURL();

}

img.src = 'fist-pump-baby.jpg';

//设置标记值

isMagnified = false;

},

//magnify函数的作用是绘制具有放大镜效果的图形

magnify = function() {

//保存当前画布的绘制状态即画布绘制原始图片的状态。方便我们在后面恢复到绘制原始图片的状态

context.save();

//因为放大镜的圆圈和把手是通过canvas绘制的这里设置了一些绘制把手和圆圈的样式属性。

context.lineWidth = 10;//线条宽度

context.shadowColor = '#000';//阴影的颜色黑色

context.shadowBlur = 15;//模糊级别为15

context.shadowOffsetX = 5;//形状与阴影的水平距离5

context.shadowOffsetY = 5;//形状与阴影的垂直距离5

//保存画布当前状态即我们设置阴影属性后的状态方便后面使用

context.save();

//绘制出放大镜把手的图形

context.beginPath();

context.moveTo(230, 230);

context.lineCap = 'round';

context.lineWidth = 30;

context.lineTo(285, 285);

context.stroke();

//对图片进行裁剪,裁剪出的图形是一个圆形。

context.beginPath();

context.arc(

150,

150,

115,

0,

Math.PI * 2,

true);

context.clip();

//创建一个新的Image对象,这个Image对象的图片资源是前面存储在dataUrl中的图片资源。所以这个Image对象和之前初始化的Image对象是完全一样的。

var magnified = new Image();

magnified.src = dataUrl;

//对Image对象进行放大1.5倍,并进行绘制。注意此时的画布状态时裁剪为一个圆形的状态,所以这里绘制的也仅仅是图片中的一个圆形区域。这里为了绘制出图片中娃娃的脸设置了绘制的图片有一定的偏移量。

context.scale(1.5, 1.5);

context.drawImage(img, -40, -40);

//调用restore()函数将画布状态恢复到绘制把放大镜把手时的状态,即具有阴影属性

context.restore();

//绘制放大镜的圆圈,即绘制刚刚我们裁剪出来图片的边框。这样刚刚裁剪出来的圆形图形就会正好处于放大镜的圆圈中。

context.arc(

150,

150,

115,

0,

Math.PI * 2,

true);

context.stroke();

//重置画布,将画布恢复到绘制元素图片的状态,以方便绘制出放大效果后,再次点击是绘制原始图片。

context.restore();

//设置标记值,实现点击后放大效果消失。

isMagnified = true;

};

//加载初始化代码,即当运行页面时会在页面绘制出一个原始图像

init();

//监听画布的点击事件,当点击页面的图像时会根据标记的值来进行判断是否对画布进行方大处理

$('canvas').click(function() {

if (isMagnified) {

init();//绘制原始图像

}

else {

magnify();//绘制放大的图像

}

});

}

</script>

<script src="jquery.js"></script>

</body>

</html>

对于这些知识在一个叫秒秒学的教程网站上有相关的学习资料,有兴趣的可以自己去看看,希望对你有帮助。

『捌』 c++,这段放大镜的程序代码什么意思或者说放大效果是如何实现的

经鉴定,此段程序无放大的具体实现。应该是实现了拷屏的功能。

『玖』 ASP 放大镜代码

<html>
<head>
<title>中国站长天空-网页特效-给地图加个放大镜</title>
<meta http-equiv="content-Type" content="text/html;charset=gb2312">
<!--把下面代码加到<head>与</head>之间-->
<SCRIPT>
var shrinkfactor=5
// left and top position of the thumbnailimage
// (distance to the left and top browser-margin, pixels)
var thumbleft = 30
var thumbtop = 30
// left and top position of the zoomed image
// (distance to the left and top browser-margin, pixels)
var largeleft = 300
var largetop = 30
// width and height of the enlarged image's sector (visible part, pixels)
var clipwidth = 240
var clipheight = 160
</SCRIPT>
<SCRIPT>
var isNav, isIE
var offsetX, offsetY
var selectedObj
var largewidth = 0
var largeheight = 0
var thumbwidth = Math.floor(largewidth/shrinkfactor)
var thumbheight = Math.floor(largeheight/shrinkfactor)
var dragimgwidth = Math.floor(clipwidth/shrinkfactor)
var dragimgheight = Math.floor(clipheight/shrinkfactor)
var dragimgleft = thumbleft+3
var dragimgtop = thumbtop+3
var difleft= largeleft-thumbleft
var diftop= largetop-thumbtop
var clippoints
var cliptop=0
var clipbottom=cliptop+clipheight
var clipleft=0
var clipright=clipleft+clipwidth
if (parseInt(navigator.appVersion) >= 4) {
if (navigator.appName == "Netscape") {
= true
} else {
isIE = true
}
}
function setZIndex(obj, zOrder) {
obj.zIndex = zOrder
}
function shiftTo(obj, x, y) {
if (isNav) {
if(x<=document.thumb.left) {x=document.thumb.left}
if(x>=(document.thumb.left+thumbwidth-dragimgwidth-2)) {x=document.thumb.left+thumbwidth-dragimgwidth-2}
if(y<=document.thumb.top) {y=document.thumb.top}
if(y>=(document.thumb.top+thumbheight-dragimgheight-2)) {y=document.thumb.top+thumbheight-dragimgheight-2}
obj.moveTo(x,y)
} else {

『拾』 jquery图片放大镜代码解析注释

(function($){//定义作用域
$.fn.imagezoom=function(options){/*自定义插件imageszoom,options代表形参(属性自定义)*/
var settings={
xzoom: 350, /*放大图的宽度(默认是 350)*/
yzoom: 350, /*放大图的高度(默认是 350)*/
offset: 10, /*离原图的距离(默认是 10)*/
position: "right", /*放大图的定位(默认是 "right")*/
preload:1
};
if(options){
$.extend(settings,options);
}
var noalt='';
var self=this;
$(this).bind("mouseenter",function(ev){/*鼠标经过时添加一个事件处理程序*/
var imageLeft=$(this).offset().left;
var imageTop=$(this).offset().top;
var imageWidth=$(this).get(0).offsetWidth;
var imageHeight=$(this).get(0).offsetHeight;
var boxLeft=$(this).parent().offset().left;
var boxTop=$(this).parent().offset().top;
var boxWidth=$(this).parent().width();
var boxHeight=$(this).parent().height();
noalt=$(this).attr("alt");
var bigimage=$(this).attr("rel");
$(this).attr("alt",'');
if($("div.zoomDiv").get().length==0){
$(document.body).append("<div class='zoomDiv'><img class='bigimg' src='"+bigimage+"'/></div>"+
"<div class='zoomMask'> </div>");
}
if(settings.position=="right"){
if(boxLeft+boxWidth+settings.offset+settings.xzoom>screen.width){
leftpos=boxLeft-settings.offset-settings.xzoom;
}else{
leftpos=boxLeft+boxWidth+settings.offset;
}
}else{
leftpos=imageLeft-settings.xzoom-settings.offset;
if(leftpos<0){
leftpos=imageLeft+imageWidth+settings.offset;
}
}
$("div.zoomDiv").css({top:boxTop,left:leftpos});
$("div.zoomDiv").width(settings.xzoom);
$("div.zoomDiv").height(settings.yzoom);
$("div.zoomDiv").show();
$(this).css('cursor','crosshair');/*光标呈现十字线*/
$(document.body).mousemove(function(e){/*当移动鼠标时*/
mouse=new MouseEvent(e);
if(mouse.x<imageLeft||mouse.x>imageLeft+imageWidth||mouse.y<imageTop||mouse.y>imageTop+imageHeight){
mouseOutImage();/*判断鼠标是否超出图片范围*/
return;
}
var bigwidth=$(".bigimg").get(0).offsetWidth;/*最大宽度*/
var bigheight=$(".bigimg").get(0).offsetHeight;/*最大高度*/
var scaley='x';/*x轴比例 */
var scalex='y';/*y轴比例 */
/*随鼠标移动显示大图*/
if(isNaN(scalex)|isNaN(scaley)){/*x、y轴比例不是数字时*/
var scalex=(bigwidth/imageWidth);
var scaley=(bigheight/imageHeight);
$("div.zoomMask").width((settings.xzoom)/scalex);
$("div.zoomMask").height((settings.yzoom)/scaley);
$("div.zoomMask").css('visibility','visible');/*规定元素可见*/
}
xpos=mouse.x-$("div.zoomMask").width()/2;
ypos=mouse.y-$("div.zoomMask").height()/2;
xposs=mouse.x-$("div.zoomMask").width()/2-imageLeft;
yposs=mouse.y-$("div.zoomMask").height()/2-imageTop;
xpos=(mouse.x-$("div.zoomMask").width()/2<imageLeft)
? imageLeft:(mouse.x+$(".zoomMask").width()/2>imageWidth+imageLeft)
? (imageWidth+imageLeft-$("div.zoomMask").width()):xpos;
ypos=(mouse.y-$("div.zoomMask").height()/2<imageTop)
? imageTop:(mouse.y+$("div.zoomMask").height()/2>imageHeight+imageTop)
? (imageHeight+imageTop-$("div.zoomMask").height()):ypos;
$("div.zoomMask").css({top:ypos,left:xpos});
$("div.zoomDiv").get(0).scrollLeft=xposs*scalex;
$("div.zoomDiv").get(0).scrollTop=yposs*scaley;
});
});
function mouseOutImage(){/*定义鼠标离开图片方法*/
$(self).attr("alt",noalt);
$(document.body).unbind("mousemove");/*移除在页面中鼠标指针事件*/
$("div.zoomMask").remove();/*移除所有的div.zoomMask*/
$("div.zoomDiv").remove();/*移除所有的div.zoomDiv*/
}
count=0;
if(settings.preload){
/*在boby元素的结尾(仍然在内部)插入指定内容*/
$('body').append("<div style='display:none;' class='jqPreload"+count+"'></div>");
$(this).each(function(){/*规定为每个匹配元素规定运行的函数*/
var imagetopreload=$(this).attr("rel");/*图片预加载*/
var content=jQuery('.jqPreload'+count+'').html();
jQuery('.jqPreload'+count+'').html(content+'<img src=\"'+imagetopreload+'\">');
});
}
}
})(jQuery);
function MouseEvent(e){/*记录鼠标x,y坐标*/
this.x=e.pageX;/*鼠标指针位置*/
this.y=e.pageY;
}

阅读全文

与实现放大镜的代码相关的资料

热点内容
word文档里的图片位置错误 浏览:195
win10360wifi打不开 浏览:745
2002电脑系统升级 浏览:745
被批评的app有哪些 浏览:512
win10如何修改hosts文件 浏览:971
iphone的未接来电 浏览:134
如何新建一个文件夹word文档 浏览:74
零售商运用了什么样的大数据 浏览:557
荣耀分身微信清理es文件浏览器 浏览:682
linux账户设置密码 浏览:69
查看数据库各表记录数 浏览:968
linux查看文件的行数 浏览:692
fpga约束文件如何自动生成 浏览:377
linux打开的文件数 浏览:973
win8修改公用网络 浏览:324
linuxlcrt 浏览:30
编程里res是什么意思 浏览:616
dm80082版本固件 浏览:37
苹果手机用什么可以打开psd文件 浏览:627
服务号和小程序的区别 浏览:888

友情链接