AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > JavaScript

js仿淘宝商品放大预览功能

51自学网 http://www.wanshiok.com
js,图片放大预览,js图片放大预览效果,放大镜效果

将鼠标移动至图片区域可放大预览

效果图:

代码如下:

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Title</title>  <style>    *{padding:0; margin:0;}    #img1{width:300px; height:200px;}    #sp1{width:60px; height:40px; position: absolute; left:0; top:0; background: rgba(62, 55, 58, 0.4)    }    #img2{width:2250px; height:1500px; position: absolute;}    div{width:450px; height:300px; position: absolute; left:310px; top:0; overflow: hidden; border:2px solid black; display: none;}  </style>  <script>    window.onload=function(){      var img1 = document.getElementById('img1');      var img2 = document.getElementById('img2');      var sp = document.getElementById('sp1');      var oBox = document.getElementById('box');      sp.onmouseover=function(){        oBox.style.display='block';      };      sp.onmouseout=function(){        oBox.style.display='none';      };      document.onmousemove=function(ev){        var x = (ev.clientX || event.clientX)-sp.offsetWidth/2;        var y = (ev.clientY || event.clientY)-sp.offsetHeight/2;        if((ev.clientX || event.clientX)<sp.offsetWidth/2){          x = 0;        }        if((ev.clientX || event.clientX)>img1.offsetWidth-sp.offsetWidth/2){          x = img1.offsetWidth-sp.offsetWidth;        }        if((ev.clientY || event.clientY)<sp.offsetHeight/2){          y = 0;        }if((ev.clientY || event.clientY)>img1.offsetHeight-sp.offsetHeight/2){          y = img1.offsetHeight-sp.offsetHeight;        }        if((ev.clientX || event.clientX)<300 && (ev.clientY || event.clientY)<200) {          sp.style.left = x + 'px';          sp.style.top = y + 'px';          img2.style.left = -x * (img2.offsetWidth / img1.offsetWidth) + 'px';          img2.style.top = -y * (img2.offsetHeight / img1.offsetHeight) + 'px';        }      }    }  </script></head><body><img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1489083204637&di=244fe324db033fc826de48e90d2373f0&imgtype=0&src=http%3A%2F%2Fpic2015.5442.com%2F2016%2F0328%2F025%2F5.jpg%2521960.jpg" alt="" id="img1"><span id="sp1"></span><div id="box">  <img src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1489083204637&di=244fe324db033fc826de48e90d2373f0&imgtype=0&src=http%3A%2F%2Fpic2015.5442.com%2F2016%2F0328%2F025%2F5.jpg%2521960.jpg" alt="" id="img2"></div></body></html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持wanshiok.com!


js,图片放大预览,js图片放大预览效果,放大镜效果  
上一篇:vue.js 1.x与2.0中js实时监听input值的变化  下一篇:利用Plupload.js解决大文件上传问题, 带进度条和背景遮罩层