返回顶部
首页 > 资讯 > 精选 >JavaScript如何实现放大镜
  • 754
分享到

JavaScript如何实现放大镜

2023-06-21 22:06:57 754人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关javascript如何实现放大镜的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现原理借助宽高等比例放大的两张图片,结合js中鼠标偏移量、元素偏移量、元素自身宽高等属性完成;左侧遮罩移

这篇文章给大家分享的是有关javascript如何实现放大镜的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

实现原理

借助宽高等比例放大的两张图片,结合js中鼠标偏移量、元素偏移量、元素自身宽高等属性完成;左侧遮罩移动Xpx,右侧大图移动X*倍数px;其余部分就是用小学数学算一下就OK了。

HTML和CSS

 <divclass="wrap">    <!-- 小图与遮罩 -->    <div id="small">      <img src="img/1.jpg"  >      <div id="mark"></div>    </div>    <!-- 等比例放大的大图 -->    <div id="big">      <img src="img/2.jpg"  id="bigimg">    </div>  </div>
 * {      margin: 0;      padding: 0;    }    .wrap {      width: 1500px;      margin: 100px auto;    }    #small {      width: 432px;      height: 768px;      float: left;      position: relative;    }    #big {            width: 768px;      height: 768px;      float: left;            overflow: hidden;      margin-left: 20px;      position: relative;      display: none;    }    #bigimg {            position: absolute;      left: 0;      top: 0;    }    #mark {      width: 220px;      height: 220px;      background-color: #fff;      opacity: .5;      position: absolute;      left: 0;      top: 0;            cursor: move;      display: none;    }
// 获取小图和遮罩、大图、大盒子    var small = document.getElementById("small")    var mark = document.getElementById("mark")    var big = document.getElementById("big")    var bigimg = document.getElementById("bigimg")    // 在小图区域内获取鼠标移动事件;遮罩跟随鼠标移动    small.onmousemove = function (e) {      // 得到遮罩相对于小图的偏移量(鼠标所在坐标-小图相对于body的偏移-遮罩本身宽度或高度的一半)      var s_left = e.pageX - mark.offsetWidth / 2 - small.offsetLeft      var s_top = e.pageY - mark.offsetHeight / 2 - small.offsetTop      // 遮罩仅可以在小图内移动,所以需要计算遮罩偏移量的临界值(相对于小图的值)      var max_left = small.offsetWidth - mark.offsetWidth;      var max_top = small.offsetHeight - mark.offsetHeight;      // 遮罩移动右侧大图也跟随移动(遮罩每移动1px,图片需要向相反对的方向移动n倍的距离)      var n = big.offsetWidth / mark.offsetWidth      // 遮罩跟随鼠标移动前判断:遮罩相对于小图的偏移量不能超出范围,超出范围要重新赋值(临界值在上边已经计算完成:max_left和max_top)      // 判断水平边界      if (s_left < 0) {        s_left = 0      } else if (s_left > max_left) {        s_left = max_left      }      //判断垂直边界      if (s_top < 0) {        s_top = 0      } else if (s_top > max_top) {        s_top = max_top      }      // 给遮罩left和top赋值(动态的?因为e.pageX和e.pageY为变化的量),动起来!      mark.style.left = s_left + "px";      mark.style.top = s_top + "px";      // 计算大图移动的距离      var levelx = -n * s_left;      var verticaly = -n * s_top;      // 让图片动起来      bigimg.style.left = levelx + "px";      bigimg.style.top = verticaly + "px";    }    // 鼠标移入小图内才会显示遮罩和跟随移动样式,移出小图后消失    small.onmouseenter = function () {      mark.style.display = "block"      big.style.display= "block"    }    small.onmouseleave = function () {      mark.style.display = "none"      big.style.display= "none"    }

感谢各位的阅读!关于“JavaScript如何实现放大镜”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: JavaScript如何实现放大镜

本文链接: https://lsjlt.com/news/301142.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JavaScript如何实现放大镜
    这篇文章给大家分享的是有关JavaScript如何实现放大镜的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实现原理借助宽高等比例放大的两张图片,结合js中鼠标偏移量、元素偏移量、元素自身宽高等属性完成;左侧遮罩移...
    99+
    2023-06-21
  • JavaScript实现放大镜效果
    本文实例为大家分享了JavaScript实现放大镜效果的具体代码,供大家参考,具体内容如下 这次实现的效果如下: 这次的案例稍微有一点难度,在css和js上都需要多加思考,话不多说...
    99+
    2024-04-02
  • JavaScript实现放大镜详细
    目录1、效果图2、实现原理3、总结1、效果图 2、实现原理 借助宽高等比例放大的两张图片,结合js中鼠标偏移量、元素偏移量、元素自身宽高等属性完成;左侧遮罩移动Xpx,右侧大图移...
    99+
    2024-04-02
  • javaScript实现放大镜特效
    要实现的效果:鼠标放到小图片上小图片上方会出现一个小块,这个小块里面的区域会放大显示到右边大图里面(如下图所示) 这个效果主要用到的是:鼠标的坐标e.clientX,e.clien...
    99+
    2024-04-02
  • JavaScript如何实现仿淘宝放大镜效果
    这篇文章主要为大家展示了“JavaScript如何实现仿淘宝放大镜效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript如何实现仿淘宝放大镜效果”这篇文章吧。html代码&nbs...
    99+
    2023-06-25
  • 用javascript实现放大镜效果
    我们经常在一些详情页上可以见到放大镜效果,今天我们也来做一个放大镜样式。 先来看一下效果: 图中的图片选的不是很好,有些糊了,各位可以重新选择图片进行做放大镜案例 这个案例可以分为...
    99+
    2024-04-02
  • 如何使用原生JavaScript实现放大镜效果
    这篇文章主要介绍了如何使用原生JavaScript实现放大镜效果的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用原生JavaScript实现放大镜效果文章都会有所收获,下面我们一起来看看吧。需求列表鼠标进...
    99+
    2023-07-05
  • JavaScript实现商品放大镜效果
    本文实例为大家分享了JavaScript实现商品放大镜的具体代码,供大家参考,具体内容如下 HTML+CSS部分: <style> .small{ ...
    99+
    2024-04-02
  • javascript实现简单放大镜效果
    一个大盒子中有一张图片,鼠标放上去会出现一个半透明的遮罩层,鼠标移动,遮罩层跟着移动,盒子旁边还有一个放大的图片,跟着遮罩层移动的位置而改变放大图的位置,鼠标离开大盒子,遮罩层和放大...
    99+
    2024-04-02
  • JavaScript怎么实现放大镜效果
    这篇文章主要介绍了JavaScript怎么实现放大镜效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。这次实现的效果如下:这次的案例稍微有一点难度,在css和js上都需要多加...
    99+
    2023-06-25
  • HTML+CSS+JavaScript实现放大镜效果
    本文实例为大家分享了HTML+CSS+JavaScript实现放大镜效果的具体代码,供大家参考,具体内容如下 效果演示 JS 详解 HTML 和 CSS 部分放在了文章最后的源代码...
    99+
    2024-04-02
  • 如何利用JavaScript实现仿京东放大镜效果
    这篇文章主要介绍如何利用JavaScript实现仿京东放大镜效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!功能实现鼠标经过小图片盒子,黄色的遮挡层和大图片显示,离开时就隐藏2个盒子功能黄色遮挡层跟着鼠标走把鼠标的...
    99+
    2023-06-29
  • vue如何实现放大镜效果
    这篇文章主要为大家展示了“vue如何实现放大镜效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue如何实现放大镜效果”这篇文章吧。组件使用less,请确保已...
    99+
    2024-04-02
  • html5如何实现放大镜功能
    今天小编给大家分享一下html5如何实现放大镜功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。html5实现放大镜功能的方...
    99+
    2023-07-05
  • 怎么用javascript实现放大镜效果
    今天小编给大家分享一下怎么用javascript实现放大镜效果的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。先来看一下效果:...
    99+
    2023-07-02
  • js如何实现仿京东放大镜
    这篇文章主要介绍“js如何实现仿京东放大镜”,在日常操作中,相信很多人在js如何实现仿京东放大镜问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”js如何实现仿京东放大镜”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-07-02
  • 使用原生JavaScript实现放大镜效果
    目录需求列表HTMLCSSJavascript分析需求列表 鼠标进入盒子里面控制遮罩层和放大盒子显示与隐藏 遮罩层跟随鼠标移动且遮罩层不超出盒子限定范围内 图片盒子/遮罩层/放大盒子...
    99+
    2023-03-01
    JavaScript实现放大镜效果 JavaScript放大镜效果 JavaScript放大镜
  • JavaScript面向对象实现放大镜案例
    本文实例为大家分享了JavaScript面向对象实现放大镜的具体代码,供大家参考,具体内容如下 效果图 实现原理分析 如图所示 触发鼠标的移动事件时,根据事件对象的 client...
    99+
    2024-04-02
  • 利用JavaScript实现仿京东放大镜效果
    功能实现 1、鼠标经过小图片盒子,黄色的遮挡层和大图片显示,离开时就隐藏2个盒子功能 2、黄色遮挡层跟着鼠标走 把鼠标的坐标给盒子,不断地进行赋值操作 把鼠标地坐标给遮挡层不合适,因...
    99+
    2024-04-02
  • Javascript如何模拟京东放大镜效果
    这篇文章将为大家详细讲解有关Javascript如何模拟京东放大镜效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。代码如下:<html> <head&...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作