JavaScript简单实现放大镜效果代码

导语:JavaScript简单实现放大镜效果代码是有百分网小编给大家提供的,大家可以参考阅读,更多详情请关注应届毕业生考试网。

* {

margin: 0;

padding: 0;

}

img{

vertical-align: top;

}

.fdj {

width: 350px;

height: 350px;

position: relative;

margin: 100px auto;

border: 1px solid gainsboro;

}

.small {

position: relative;

}

.small img {

width: 350px;

}

.mask {

width: 100px;

height: 100px;

background: rgba(255, 255, 0, 0.4);

position: absolute;

left: 0;

top: 0;

cursor: move;

display: none;

}

.big {

position: absolute;

top: 0;

left: 360px;

width: 500px;

height: 500px;

border: 1px solid gainsboro;

overflow: hidden;

display: none;

}

.big img{

position: absolute;

left: 0;

top: 0;

}

var fdj = document.querySelector('.fdj') // 获得最大的'盒子

var small = document.querySelector('.small'); //获取小图片盒子

var big = document.querySelector('.big'); //获取大图片盒子

var bigs = big.children[0] //大图片

var smalls = small.children[0] //小图片

var mask = small.children[1]; //遮罩

//鼠标移入小图片盒子

small.onmouseover = function() {

//鼠标移入图片盒子将遮罩与大图片显示

mask.style.display = 'block';

big.style.display = ' block';

};

//鼠标移出小图片盒子

small.onmouseout = function() {

//鼠标移出小图片盒子将遮罩与大图片隐藏

mask.style.display = 'none';

big.style.display = 'none';

};

var x=0;

var y=0;

//鼠标在小图片上移动时

small.onmousemove = function(ev) {

var ev = event || window.event;

//让鼠标在遮罩正中

//鼠标X坐标与Y坐标

x = ev.clientX -this.offsetParent.offsetLeft- mask.offsetWidth / 2 ;

y = ev.clientY -this.offsetParent.offsetTop- mask.offsetHeight / 2 ;

//将遮罩限制在小图片盒子中

if (x<0) {

x=0;

}else if(x>small.offsetWidth-mask.offsetWidth){

x = small.offsetWidth-mask.offsetWidth;

}

if(y<0){

y=0;

}else if(y>small.offsetHeight-mask.offsetHeight){

y= small.offsetHeight-mask.offsetHeight

}

mask.style.left = x + 'px';

mask.style.top = y + 'px';

//大图与小图的比例

/*var scalX = bigs.offsetWidth/small.offsetWidth;

var scalY = bigs.offsetHeight/small.offsetHeight;*/

var scalX = x/(small.offsetWidth-mask.offsetWidth);

var scalY = y/(small.offsetHeight-mask.offsetHeight);

bigs.style.left = -(x*scalX)+'px';

bigs.style.top = -(y*scalY)+'px';

};

java放大镜怎么写,JavaScript简单实现放大镜效果代码相关推荐

  1. php mysql简单留言本_php+mysql写的简单留言本实例代码

    php+mysql写的简单留言本实例代码 更新时间:2008年07月25日 09:41:32   作者: 方便新手学习php guestbook.php: COLOR: #002878; TEXT-D ...

  2. Java Stream如何写出高雅又装*的代码

    Java Stream如何写出高雅又装*的代码 一. 冷静分析 二. 直接开装 2.1 初级炫 2.2 普通炫 2.3 高级炫 2.4 再炫一波 拿到当前key与对应的数量 2.5 Map Reduc ...

  3. 用CSS写一个简单的幻灯片效果页面

    这里是修真院前端小课堂,本篇分析的主题是 [用CSS写一个简单的幻灯片效果页面] 每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方 ...

  4. 九宫格抽奖源代码php,原生javascript实现九宫格抽奖效果代码

    本篇文章主要介绍了原生javascript实现九宫格抽奖效果代码.具有很好的参考价值.下面跟着小编一起来看下吧 效果图: 代码如下: *{margin:0;padding:0;} #container ...

  5. Java 百度AI 写一个简单的手势识别程序

    教程地址:请关注我的https://edu.csdn.net/course/detail/23001 Java写一个简单的手势识别程序,这里采用百度是AI,视觉技术中的人体分析中的手势识别,识别图片中 ...

  6. 《javaScript100例|03》自写javaScript+CSS轮显效果

    目录 效果图 代码示例 源码地址:自写Js+CSS轮显效果.rar-互联网文档类资源-CSDN下载https://download.csdn.net/download/weixin_41937552/ ...

  7. 曼哈顿距离java实现_基于javascript实现获取最短路径算法代码实例

    这篇文章主要介绍了基于javascript实现获取最短路径算法代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 //A算法 自动寻路 ...

  8. java许愿墙_18.JavaScript实现许愿墙效果

    JavaScript实现许愿墙效果: Document margin:0; } .paper { position: fixed; left: 200px; top: 200px; width: 20 ...

  9. java 随机生成头像,javascript 随机展示头像实现代码

    先看图: 很简单的一个效果 首先html css ul,li{margin:0;padding:0;} ul{position:relative;width:100%;height:333px;} l ...

  10. java构造方法怎么写_简单了解JAVA构造方法

    怎么写 java构造方法必须满足以下语法规则: (1) 方法名必须与类名相同. (2)不要声明返回类型. (3)不能被static.final.synchronized.abstract和native ...

最新文章

  1. 问题总结两天来两场实习面试(中科创达、华为)
  2. tomcat 初始管理用户和密码
  3. 一行命令,瞬间从“马赛克”到高清影像
  4. C++ 11 中的POD
  5. 推荐系统笔记:基于贝叶斯的协同过滤
  6. python远程创建linux用户_如何设置远程访问的Jupyter Notebook服务器-02:如何创建Linux用户?...
  7. 你会接受师兄的追求吗?
  8. Linux stmac网卡代码分析----probe
  9. 有了容器为什么kubernetes还需要Pod?
  10. YBTOJ:幻灯片(二分图匹配)
  11. MySQL数据库开启root用户远程登录
  12. “命令终端”的实现3-命令的执行
  13. java中的时间戳sssss,Java日期时间API系列35-----Jdk8中java.time包中的新的日期时间API类应用,微秒和纳秒等更精确的时间格式化和解析。...
  14. 极域课堂管理系统软件如何取消控制_《亲子沟通,调节孩子开学情绪》——烟洲小学家长课堂系列活动...
  15. layabox 文本 html,LayaBox:富文本HtmlDivElement常用设置
  16. 计算机怎么看事件管理,用事件查看器查看电脑使用记录
  17. linux如何设置默认浏览器,如何从命令行设置默认浏览器?
  18. 混音合成效果器:Cradle The God Particle for Mac
  19. cvReleaseCapture函数说明
  20. SimpleITK使用——1. 进行Resample/Resize操作

热门文章

  1. 9.郝斌C语言笔记——变量的作用域和存储方式
  2. linux usb ic读卡器,在Linux下使用ACS ACR1252U USB NFC读卡器
  3. pygame教程:第一课 初始化和主循环
  4. C语言符号常量的使用,C语言常量与符号常量
  5. 一款很好用的软还原卡
  6. 思科防火墙ASA5520做NAT映射配置实例
  7. 计算机系徽 节徽设计,数学节节徽设计图
  8. 巴特沃斯归一化数字低通滤波器参数、原理及使用方法
  9. Excel将选中的筛选内容复制可见的筛选格中方法
  10. [.NET] ConfuserEx脱壳工具打包