怎样做出京东商品详情的放大镜效果

京东放大镜效果

这里写图片描述

实现放大镜主要知识点

javascript中DOM操作。

javascript中时间的获取,主要有mouseenter、mouseleave、以及当鼠标在照片上移动的时候onmousemove事件以及其中的事件对象中的属性clientY,clientX,还有获取元素宽度offsetWidth、offsetHight等。

这里面好考虑到绝对定位,以及放大倍率的计算,里面用到的倍率计算公式(小框里面的放大区域面积/小框面积)=(大框的面积/大筐里的大照片的面积)//大照片的原理是将其放在大框里,将大框的css样式设置为overflow:hidden,这样可以将你小筐里的区域按比例显示在大框里面。

具体代码实现情况如下

nbsp;html>                    放大镜                    *{                margin: 0;                padding: 0;            }            #small{                float: left;                width:450px;                height:450px;                border: 1px solid black;                margin-left: 100px;                position:absolute;            }            #big{                float: left;                width:600px;                height:600px;                overflow: hidden;                border: 1px solid black;                position: absolute;                left:600px;                top: 0px;            }            #magnifying{                width: 200px;                height:200px;                background-color: cornflowerblue;                opacity: 0.4;                left: 0px;                top: 0px;                position: absolute;            }            #bigImg{                position: absolute;                width: 1350px;                height:1350px;            }                        

            怎样做出京东商品详情的放大镜效果//记得将其设置与小框大小一致            

                

            怎样做出京东商品详情的放大镜效果        

         var small=document.getElementById("small"); var magnifying=document.getElementById("magnifying"); var big=document.getElementById("big"); var bigImg=document.getElementById("bigImg"); small.onmouseenter=function(){ magnifying.style.display="block"; bigImg.style.display="block" } small.onmouseleave=function(){ magnifying.style.display="none"; bigImg.style.display="none"; } small.onmousemove=function(event){ var left=event.clientX-small.offsetLeft-magnifying.offsetWidth/2; var top=event.clientY-small.offsetTop-magnifying.offsetHeight/2; var leftMax=small.offsetWidth-magnifying.offsetWidth; var topMax=small.offsetHeight-magnifying.offsetHeight; //限制鼠标移动的区域 left = left<=0 ? 0 : left; top = top =leftMax?leftMax:left; top =top>=topMax?topMax:top; magnifying.style.left=left+"px"; magnifying.style.top=top+"px"; //核心代码 var imgLef=-left/leftMax *(bigImg.offsetWidth-big.offsetWidth); var imgTop=-top/topMax * (bigImg.offsetHeight-big.offsetHeight); bigImg.style.left=imgLef+"px"; bigImg.style.top=imgTop+"px"; }     

登录后复制

这样就可以实现放大效果啦,希望这些能对对大家有所帮助。

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

JS的设计模式之构造函数模式详解

前端为什么要使用模块化?

web前端关于浏览器兼容性问题的解决方案

以上就是怎样做出京东商品详情的放大镜效果的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2782916.html

(0)
上一篇 2025年3月8日 16:40:40
下一篇 2025年2月23日 11:09:35

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 使用selenium抓取淘宝的商品信息

    这次给大家带来使用selenium抓取淘宝的商品信息,使用selenium抓取淘宝商品信息的注意事项有哪些,下面就是实战案例,一起来看一下。 淘宝的页面大量使用了js加载数据,所以采用selenium来进行爬取更为简单,selenum作为一…

    编程技术 2025年3月8日
    200
  • jQuery实现购物车添加商品并结算

    这次给大家带来jQuery实现购物车添加商品并结算,jQuery实现购物车添加商品并结算的注意事项有哪些,下面就是实战案例,一起来看一下。 /*删除*/ $(function(){ $(“.blue”).bind(“click”,funct…

    编程技术 2025年3月8日
    200
  • vue绑定id从列表页跳转至详情页步骤详解

    这次给大家带来vue绑定id从列表页跳转至详情页步骤详解,vue绑定id从列表页跳转至详情页的注意事项有哪些,下面就是实战案例,一起来看一下。 1. 列表页:列表页带id跳转到详情页 详情页:把id传回到后台就可以获取到数据了 2.列表页跳…

    2025年3月8日 编程技术
    200
  • jQuery实现鼠标滑过商品小图片上显示对应大图商品页预览功能

    这次给大家带来jQuery实现鼠标滑过商品小图片上显示对应大图商品页预览功能,jQuery实现鼠标滑过商品小图片上显示对应大图商品页预览功能的注意事项有哪些,下面就是实战案例,一起来看一下。 1 . 效果截图 2 . 代码 jQuery图片…

    2025年3月8日 编程技术
    200
  • 怎样操作vue通过id从列表页跳转详情页

    这次给大家带来怎样操作vue通过id从列表页跳转详情页,操作vue通过id从列表页跳转详情页的注意事项有哪些,下面就是实战案例,一起来看一下。 1. 列表页:列表页带id跳转到详情页 详情页:把id传回到后台就可以获取到数据了 2.列表页跳…

    2025年3月8日 编程技术
    200
  • 怎样实现微信小程序商品详情页底部弹出框

    这次给大家带来怎样实现微信小程序商品详情页底部弹出框,实现微信小程序商品详情页底部弹出框的注意事项有哪些,下面就是实战案例,一起来看一下。 1.js代码(一般情况下只调用显示对话框的函数,当点击对话框外部的时候,对话框可以消失) //显示对…

    编程技术 2025年3月8日
    200
  • 京东可以点外卖了吗 京东点外卖教程

    京东外卖惊喜上线!还在等什么?快来体验京东app全新外卖服务吧! 京东外卖,真的可以点外卖了! 是的,你没看错!京东APP正式推出外卖服务!2月11日,京东外卖开启“品质堂食餐饮商家”招募,2025年5月1日前入驻的商家,全年免佣金! 京东…

    2025年3月7日
    400
  • 京东关于京东APP在哪里 京东关于京东APP查看教程

    轻松找到京东app的“关于”信息!想知道如何在京东app中查看版本信息和其他相关内容吗?这篇简短教程将引导您快速找到它。 打开您的京东App。 在App底部点击“我的”,然后在右上角找到并点击“设置”图标。 您现在就可以在设置页面中找到“关…

    2025年3月7日
    400
  • 京东买东西怎么选择发货地

    在京东平台购物,如何选择心仪的发货地?本文将为您详细讲解操作步骤,助您轻松掌握这一功能。 第一步:搜索商品 打开京东APP或网站,在搜索栏输入您想购买的商品名称,点击搜索。 第二步:使用筛选功能 搜索结果页面右上角通常有一个“筛选”按钮,点…

    2025年3月7日
    300
  • 京东会员自动续费怎么取消

    轻松取消京东会员自动续费,省钱小技巧!很多朋友为了享受京东会员的优惠,会选择开通会员,但默认的自动续费功能却常常被忽视。别担心,本文将手把手教你如何取消京东会员自动续费。 取消自动续费步骤: 第一步:进入Plus会员中心 打开京东APP,点…

    2025年3月7日 互联网
    400

发表回复

登录后才能评论