效果预览:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
#box1{
width:400px;
height:400px;
border:solid 1px blue;
position: relative;
left:0;top:0;
background: url(img/TB2KJgidB0kpuFjy1zdXXXuUVXa_!!1580757763.jpg_400x400.jpg)
no-repeat;
float: left;
cursor: crosshair;
}
#sk{width: 220px;height:200px;background:#EBEDEA;position: absolute;
left:0;top:0;
filter:alpha(opacity:30);/* ie*/
opacity:0.3;/*其他*/
display: none;}
#box3{
width:400px;
height:400px;
/* background: red;*/
position: relative;
left:0;top:0;
}
#box2{width: 440px;height:400px;float: left;border: 1px solid green;
margin-left:50px;overflow: hidden;position: relative;display: none;
}
#tp{position: absolute;left:0 top:0;
}
</style>
<script type="text/javascript">
window.οnlοad=function(){
var box1=document.getElementById("box1");
var box2=document.getElementById("box2");
var box3=document.getElementById("box3");
var sk=document.getElementById("sk");
// alert(sk.style.left);
box3.οnmοusemοve=function(e){
var dx=window.event||e;
var mousele=dx.offsetX||dx.layerX;
var mouseto=dx.offsetY||dx.layerY;
var skleft=mousele-110;
var sktop=mouseto-100;
sk.style.display='block';
box2.style.display='block';
if(skleft>180){skleft=180} ;
if(skleft<0){skleft=0} ;
if(sktop<0){sktop=0};
if(sktop>200){sktop=200};
sk.style.left=skleft+'px';
sk.style.top=sktop+'px';
// alert(sk.style.left);
tp.style.left=-2*skleft+'px';
tp.style.top=-2*sktop+'px';
}
box3.οnmοuseοut=function(){
sk.style.display='none';
box2.style.display='none';
}
}
</script>
</head>
<body>
<div id="box1">
<div id="sk"></div>
<div id="box3"></div>
</div>
<div id="box2">
<img id="tp" src="img/TB239oudwJlpuFjSspjXXcT.pXa_!!1580757763.jpg"/>
</div>
</body>
</html>