电商网站放大镜效果

<!DOCTYPE html>
<html>
<head>
<title></title>
   <!--  有bug会闪动 -->
<style type="text/css">
   *{
    padding: 0;
    margin: 0;
   }
#left{
width: 400px;
height: 400px;
border: 2px solid blue;
margin: 15px;
background: url(400.jpg)no-repeat;
float: left;
position: relative;
cursor:crosshair;
}
#box{
width: 220px;
height: 200px;
background: green;
opacity:0.8;
            filter:alpha(opacity=80); 
            position: absolute;
            top: 0;
            left: 0;
            display: none;
}
#right{
width: 440px;
height: 400px;
border: 2px solid purple;
float: left;
overflow: hidden;
position: relative;
display: none;
}
#pic{
position: absolute;
top: 0;
left: 0;
}
#cover{
width: 400px;
height: 400px;
background: red;
position: absolute;
left: 0;
top: 0;
opacity:0;
            filter:alpha(opacity=0); 
}


</style>
     <script type="text/javascript">
         window.οnlοad=function(){
          var left=document.getElementById('left');
          var box=document.getElementById('box');
          var right=document.getElementById('right');
          var pic=document.getElementById('pic');
          var cover=document.getElementById('cover');
          // 给左边加移动事件
          cover.οnmοusemοve=function(e){
          // 获得鼠标的位置
          var ev=window.event||e;
          var mouse_left=ev.offsetX||ev.layerX;
          var mouse_top=ev.offsetY||ev,layerY;
          // 计算色块的位置
          var box_left=mouse_left-110;
          var box_top=mouse_top-100;
          // 限定box的区域
          if(box_left>180){
          box_left=180;
          }
          if (box_top>200) {
          box_top=200;
          }
          if (box_left<0) {
          box_left=0;
          }
          if (box_top<0) {
          box_top=0;
          }
          // 让色块移动
          box.style.left=box_left+'px';
          box.style.top=box_top+'px';
          //计算右边区域的位置
          var pic_left=box_left*-2;
          var pic_top=box_left*-2;
          // 让右边区域移动
          pic.style.left=pic_left+'px';
          pic.style.top=pic_top+'px';        


          }
          cover.οnmοuseοver=function(){
          box.style.display='block';
          right.style.display='block';
          }
          cover.οnmοuseοut=function(){
          box.style.display='none';
          right.style.display='none';
          }
         }    
     </script>
</head>
<body>
     <div id="left">
        <div id="cover">
        </div>
      <div id="box">    
      </div>
     </div>
     <div id="right">
      <img src="800.jpg" id="pic">
     </div>
</body>
</html>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值