JavaScript写放大镜效果

<!DOCTYPE html> <html lang=en> <head>     <meta charset=UTF-8>     <title>Document</title>     <style type=text/css>         #middle {             width: 400px;             height: 400px;             position: absolute;             top : 50px;             left : 100px;             border: 1px solid;         }           #middle img {             width: 400px;             height: 400px;         }           #len {             width: 200px;             height: 200px;             background: #f00;             position: absolute;             top: 0;             left: 0;             opacity: 0.5;             display: none;         }           #big {             width: 400px;             height: 400px;             position: absolute;             top : 50px;             left : 520px;             border:1px solid;             overflow: hidden;             display: none;         }         #big img {             width: 800px;             height: 800px;             position: absolute;             top : 0;             left : 0;         }     </style> </head> <body>     <div id=middle>         <img src=images/middle.jpg>         <div id=len></div>     </div>       <div id=big>         <img src=images/big.jpg id=big_img>     </div>       <script src=js/tools.js></script>     <script>         /* 鼠标移入/移出 div#middle */         $(#middle).onmouseenter = function(){             $(#len).style.display = block;             $(#big).style.display = block;         }         $(#middle).onmouseleave = function(){             $(#len).style.display = none;             $(#big).style.display = none;         }           // 求 div#middle 元素在文档中定位         var middleOffset = offset($(#middle));           /* 鼠标在 div#middle 上移动 */         $(#middle).onmousemove = function(e){             // 镜头坐标             var _top = e.pageY - middleOffset.top - 100,                 _left = e.pageX - middleOffset.left - 100;             // 判断镜头是否在div#middle中图范围内移动             if (_top < 0)                 _top = 0;             else if (_top > 200)                 _top = 200;             if (_left < 0)                 _left = 0;             else if (_left > 200)                 _left = 200; 

 

 

更多内容请见原文,文章转载自:https://blog.csdn.net/weixin_44519496/article/details/118599333