/* *知识点预备 clientX,clientY 鼠标相对于可视区的位置 offsetX,offsetY layerX layerY 鼠标相对于事件源的位置 screenX,screenY 鼠标相对于屏幕的位置 pageX , pageY IE(不支持)鼠标在页面上的位置,从页面左上角开始,即是以页面为参考点,不随滑动条移动而变化。 在有滚动条的情况下就需要做这种额外的处理 兼容性的处理如下
var docE = document.documentElement,docBody=document.body;
pageX = clientX + Math.max(docE .scrollLeft,docBody.scrollLeft); pageY = clientY + Math.max(docE .scrollTop,docBody.scrollTop);**/
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>放大镜</title> <link rel="stylesheet" href=""> <style type="text/css"> media="all" html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, address, big, cite, code, del, em, font, img, ins, small, strong, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend { margin: 0; padding: 0; } #small{ border: 1px solid #dddddd; width: 352px; height: 352px; position: absolute; top: 0px; left: 0px; } #small img{ width: 350px; height: 350px; } .zoomUp{ visibility:hidden; cursor: move; border: 1px solid #ddd; background: #FEDE4F 50% top no-repeat; opacity: .5; -moz-opacity: .5; -khtml-opacity: .5; filter: alpha(Opacity=50); position: absolute; left: 0; top:0; } #big{ width: 402px; height: 402px; position: absolute; left: 362px; top: 0px; border: 1px solid #dddddd; overflow: hidden; visibility: hidden; } #big img{ width: 800px; height: 800px; position: absolute; } </style> <script type="text/javascript"> window.onload = function(){ var small = document.getElementById("small"); var big = document.getElementById("big"); var bigImg = big.getElementsByTagName("img")[0]; small.onmouseover = function(e){ var e = e || window.event; big.style.visibility = "visible"; small.onmousemove = function(e){ var e = e || window.event; //事件源位置 var ex = e.offsetX || e.layerX; var ey = e.offsetY || e.layerY; bigImg.style.left = -ex/small.offsetWidth*(big.offsetWidth)+"px"; bigImg.style.top = -ey/small.offsetHeight*(big.offsetHeight)+"px"; } small.onmouseout = function(e){ console.log("out"); big.style.visibility = "hidden"; small.onmousemove = small.onmouseout = null; } return false; } } </script> </head> <body> <div id="small"> <img src="img/small.jpg" /> </div> <div id="big"> <img src="img/big.jpg"> </div> </body> </html>
相关推荐
1.本demo是一个类似于淘宝放大镜的效果。 2.使用vue3+vite搭建 3.实现了图片点击轮播和移入放大的效果 4.下载下来可直接使用,必须真实 有问题可以直接提问
简单易用的仿淘宝放大镜效果精简版(下面带小图片列表),没有无用代码,代码简短易用,不加密,下载直接就可以用
原生JS 仿淘宝放大镜效果,鼠标移入选择图片局部,在右边弹出显示图片局部放大效果
JavaScript仿淘宝放大镜效果 本文实例为大家分享了JavaScript实现淘宝放大镜效果的具体代码,供大家参考,具体内容如下 html代码 <div class="thumbnail"> (2).jpg" alt=""> <div class="magnifier"></div> ...
仿淘宝商品图片放大镜效果,大图片下面有小图片列表,单击小图片切换,鼠标移到大图片上面右侧出现图片的放大效果!
jQuery放大镜效果仿淘宝放大效果 仿淘宝产品预览放大效果
使用react写一个仿图片放大镜效果使用react写一个仿图片放大镜效果
仿淘宝js放大镜效果 核心代码 malmg.onmouseover = function(){ showimg.style.display = "block"; bigimg.style.display = "inline"; show_half = showimg.offsetHeight/2; maxWidth = smalmg.clientWidth - ...
仿淘宝图片放大镜功能,移动经过时放大,js
仿淘宝、京东商品放大镜效果
仿ppg放大镜效果,似淘宝详细页面局部放大效果
仿淘宝多图片放大镜效果
用原生js写的放大镜效果
仿东京,天猫,淘宝网商品放大镜效果。参考JQZOOM插件使用jQuery仿京东网产品展示切换及放大效果的代码.rar
本人参考淘宝的商品详细页商品放大镜效果来制作,商品图片可以为各种矩形,放大规则同淘宝相似。css中的样式可进行各种样式修改。支持IE6及以上版本
运用 JavaScript以及HTML5实现三种放大镜的效果,包括圆形放大镜效果,直接矩形放大镜效果以及仿淘宝或者京东商品展示放大镜效果。
html5仿淘宝京东放大镜,实现一个交互性非常好的图片放大特效,除了使用HTML5技术外,还引入了jquery插件来辅助完成放大功能。本功能可用于各种企业、公司网站的产品展示模块,或在线商城中,兼容性比较好,在移动端...
JS+html实现淘宝图片放大镜预览效果