JS实现放大镜效果


Posted in Javascript onSeptember 21, 2020

JS实现放大镜效果,供大家参考,具体内容如下

鼠标移到图片上就可以放大一块区域

代码:

<!DOCTYPE html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
   #small{
    width: 700px;
    height: 340px;
    position: absolute;
    left: 70px;
    top: 100px;
   }
   #small img{
    width: 100%;
    height: 100%;
   }
   #mark{
    width: 200px;
    height: 200px;
    background-color:white;
    position: absolute;
    opacity: 0.5;
    filter: alpha(opacity=50);
    left: 0px;
    top: 0px;
    display: none;
   }
   #big{
    width: 400px;
    height: 400px;
    border: 1px solid black;
    left: 800px;
    top: 100px;
    position: absolute;
    overflow: hidden;
    display: none;
   }
   #big img{
    width: 1400px;
    height: 680px;
    position: absolute;
    left: 0px;
    top: 0px;
   }
  </style>
  <script>
   window.onload = function(){
    var oSmall = document.getElementById("small");
    var oBig = document.getElementById("big");
    var oMark = document.getElementById("mark");
    var oBigImg = oBig.getElementsByTagName("img")[0];

    oSmall.onmouseover = function(){
     oMark.style.display = "block";
     oBig.style.display = "block";
    }
    oSmall.onmouseout = function(){
     oMark.style.display = "none";
     oBig.style.display = "none";
    }
    oSmall.onmousemove = function(ev){
     var e = ev || window.event;
     var l = e.clientX - oSmall.offsetLeft - 100;
     if(l <= 0){
      l = 0;
     }
     if(l >= (700-200)){
      l = 500;
     }
     var t = e.clientY - oSmall.offsetTop - 100;
     if(t <= 0){
      t = 0;
     }
     if(t >= (340-200)){
      t = 140;
     }
     oMark.style.left = l + 'px';
     oMark.style.top = t + 'px';

     /* 右边图片移动方向与左边图片方向相反且成倍数移动 */
     oBigImg.style.left = l * -2 + 'px';
     oBigImg.style.top = t * -2 + 'px';

    }
   }
  </script>
 </head>
 <body>
  <div id="small">
   <img src="地狱之门卫士 加里奥.jpg" alt="怎么回事">
   <div id="mark"></div>
  </div>
  <div id="big">
   <img src="地狱之门卫士 加里奥.jpg" alt="怎么回事">
  </div>
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery中append、insertBefore、after与insertAfter的简单用法与注意事项
Apr 04 Javascript
jQuery中RadioButtonList的功能及用法实例介绍
Aug 23 Javascript
jquery遍历checkbox介绍
Feb 21 Javascript
js触发onchange事件的方法说明
Mar 08 Javascript
微信小程序 wx.request(object) API详解及实例代码
Sep 30 Javascript
jQuery生成假加载动画效果
Dec 01 Javascript
javascript基础知识之html5轮播图实例讲解(44)
Feb 17 Javascript
Vue2.0组件间数据传递示例
Mar 07 Javascript
把vue-router和express项目部署到服务器的方法
Feb 21 Javascript
JS实现面向对象继承的5种方式分析
Jul 21 Javascript
js实现文章目录索引导航(table of content)
May 10 Javascript
jquery更改元素属性attr()方法操作示例
May 22 jQuery
vue element ui validate 主动触发错误提示操作
Sep 21 #Javascript
Vue Element校验validate的实例
Sep 21 #Javascript
在vue中实现某一些路由页面隐藏导航栏的功能操作
Sep 21 #Javascript
vue3.0 上手体验
Sep 21 #Javascript
微信小程序实现点击页面出现文字
Sep 21 #Javascript
vue pages 多入口项目 + chainWebpack 全局引用缩写说明
Sep 21 #Javascript
理解JavaScript中的Proxy 与 Reflection API
Sep 21 #Javascript
You might like
NO3第三帝国留言簿制作过程
2006/10/09 PHP
PHP教程 基本语法
2009/10/23 PHP
Prototype Object对象 学习
2009/07/12 Javascript
XMLHTTPRequest的属性和方法简介
2010/11/23 Javascript
php与js的区别是什么
2013/08/05 Javascript
使用jquery解析XML示例代码
2014/09/05 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
asp知识整理笔记3(问答模式)
2015/09/27 Javascript
javascript产生随机数方法汇总
2016/01/25 Javascript
nodejs之get/post请求的几种方式小结
2017/07/26 NodeJs
JavaScript实现body内任意节点的自定义属性功能示例
2017/09/18 Javascript
使用JavaScript实现在页面中显示距离2017年中秋节的天数
2017/09/26 Javascript
React实践之Tree组件的使用方法
2017/09/30 Javascript
微信小程序开发之tabbar图标和颜色的实现
2018/10/17 Javascript
vue draggable resizable 实现可拖拽缩放的组件功能
2019/07/15 Javascript
用Python输出一个杨辉三角的例子
2014/06/13 Python
Python 自动补全(vim)
2014/11/30 Python
Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法
2018/01/11 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
python 多线程串行和并行的实例
2019/02/22 Python
Pycharm使用远程linux服务器conda/python环境在本地运行的方法(图解))
2019/12/09 Python
python实现的Iou与Giou代码
2020/01/18 Python
Python3将ipa包中的文件按大小排序
2020/04/17 Python
CSS3 icon font完全指南(CSS3 font 会取代icon图标)
2013/01/06 HTML / CSS
澳大利亚快时尚鞋类市场:Billini
2018/05/20 全球购物
美国隐形眼镜网上商店:Lens.com
2019/09/03 全球购物
历史学专业毕业生求职信
2013/09/27 职场文书
心理学专业大学生职业生涯规划范文
2014/02/19 职场文书
人力资源部经理岗位职责规定
2014/02/23 职场文书
科技节口号
2014/06/19 职场文书
购房意向书
2014/08/30 职场文书
2015年发展党员工作总结报告
2015/03/31 职场文书
团日活动总结格式
2015/05/11 职场文书
主题班会开场白
2015/06/01 职场文书
电影小兵张嘎观后感
2015/06/03 职场文书
数据库连接池
2021/04/06 MySQL