10分钟实现图片放大镜效果

少废话 先上效果图
在这里插入图片描述
代码如下
HTML部分

Document

CSS部分
#left {
width: 300px;
height: 200px;
position: absolute;
left: 100px;
top: 100px;
border: 1px solid black;
}
#left img {
width: 100%;
height: 100%;
}
#mark {
display: none;
width: 100px;
height: 100px;
background-color: white;
opacity: 0.5;
position: absolute;
left: 0;
top: 0;
}
#right {
display: none;
width: 300px;
height: 300px;
position: absolute;
left: 500px;
top: 100px;
border: 1px solid black;
overflow: hidden;
}
#right img {
width: 900px;
height: 600px;
position: absolute;
left: 0;
top: 0;
}

JS部分
window.onload =function(){
var oLeft = document.getElementById(“left”);
var oRight = document.getElementById(“right”);
var oMark = document.getElementById(“mark”);
var oRightImg =oRight.getElementsByTagName(“img”)[0];

 oLeft.onmouseover = function(){
     oMark.style.display = 'block';
     oRight.style.display ='block';
 }
 oLeft.onmouseout = function(){
    oMark.style.display = 'none';
    oRight.style.display ='none';
}
oLeft.onmousemove = function(ev){
    var e = ev || window.event;
    var l = e.clientX - oLeft.offsetLeft - 50;
    var t = e.clientY - oLeft.offsetTop - 50;
    if(l<=0){
        l = 0;
    }
    if(l>=200){
        l = 200;
    }
    if(t<=0){
        t = 0;
    }
    if(t>=100){
        t = 100;
    }
    oMark.style.left = l + 'px';
    oMark.style.top = t + 'px';

    oRightImg.style.left = l * -3 +'px';
    oRightImg.style.top = t * -3 +'px';
}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值