思路超清晰-js实现放大镜功能
js实现放大镜功能
今天写项目,但是发现项目中的图片太小,很多信息我们都看不清楚,但是为了页面布局,我有不能讲图片调的尺寸过于大,因此,就想到了用js实现图片的放大镜来解决我的问题。
实现后功能大致是这样:
放大镜原理:做一个隐藏的大图,大图为空且隐藏,当鼠标移入时显示大图主要功能:鼠标移入,放大镜显示鼠标移出,放大镜隐藏鼠标移动,放大镜随之移动,并且当大制定部分涉及三个鼠标事件:onmouseover : 鼠标指针移动到指定对象时触发onmouseout: 鼠标指针移出指定对象时触发onmouseomove: 鼠标指针移动时触发
下面是7个基本的实现步骤,读者只需要按部就班就可以实现放大镜功能:
$(function(){$(".book-cover").mouseover(function(e){//1.获取图片大小var width = this.width;var height = this.height;//2.获取鼠标的当前位置var x = e.pageX + 10;var y = e.pageY + 10;//3.创建一个divvar div = $("<div id='bigImg'/>").css({"position":"absolute","width":width * 1.5,"height":height * 1.5,"top":y,"left":x,"display":"none","border":"5px solid orange","border-radius" : "15px"});//4.创建一个imgvar img = $("<img/>").attr({"src":this.src}).css({"width":width * 1.5,"height":height * 1.5, "border-radius" : "12px"});//5.将img放到div当中div.append(img);//6.将div放入到body中$("body").append(div);//7.将img展示出来div.show(1000);}).mousemove(function(e){//获取鼠标当前的位置var x = e.pageX + 10;var y = e.pageY + 10;//改变div的位置$("#bigImg").css({"top":y,"left":x});}).mouseout(function(){$("#bigImg").remove();});});
需要注意的几点:
1.实现内容的大致框架
$(“.图片对应的class属性值”).mouseover(function(e){ //利用类选择器拿到所有的图片//鼠标移入时触发的代码
}).mousemove(function(e){//鼠标移动时触发的代码
}).mouseout(function(e){//鼠标移出时实现的代码
});
2.修改大图的尺寸
将div和img样式中的width和height属性进行修改,我们当前默认为大图是原图的1.5倍,读者可以自行决定大图的尺寸.
思路超清晰-js实现放大镜功能相关推荐
- 原生JS实现放大镜功能
原生JS实现的放大镜功能,自己写的,简单使用 点击下面连接去我的github上下载出来打开就行,不需要复杂配置,在img标签的src属性把你自己的图片换上去就ok. 文件在此 走过路过,喜欢的话点个赞 ...
- Html+css+js实现放大镜功能(详细完整代码)
通过将鼠标指向指定的图片,将鼠标移动到图片时,显示一个透明的小区域,然后将小区域的部分放大,查看细节. 运行效果: 详细代码: <!DOCTYPE html> <html>& ...
- 【前端小实战】京东官网放大镜功能
文章目录 一.页面效果展示 二.代码实现解析 三.完整代码 一.页面效果展示 二.代码实现解析 1.html基本框架,展示的小方块为 #small_div,移动的方块为 #move_div 放在小方块 ...
- js仿淘宝主图放大镜功能
js仿淘宝主图放大镜功能 演示地址 下载地址
- js技术实现图片放大镜功能
利用idea软件 js技术实现图片放大功能 第一步 准备图片 将要放大图片放大 web 下 第二步 具体实现代码 <%@ page contentType="text/html;cha ...
- 【每日一练】原生js仿淘宝主图放大镜功能,附学习源码
在我们的项目中,经常会遇到各种功能效果的实现,对于每一项功能的实现方式,都有很多种,这些实现方式没有好坏之分,只有适合与否,但是我个人建议,如果项目急就选择自己擅长的方式实现,比较完成工作更加重要嘛. ...
- 全程配图超清晰的Springboot权限控制后台管理项目实战第二期(Springboot+shiro+mybatis+redis)
全程配图超清晰的Springboot权限控制后台管理项目实战第二期(Springboot+shiro+mybatis+redis) 众所周知,作为一个后端新手学习者,通过项目来学习,增长项目经验,是一 ...
- 超炫jQuery测试答题功能
推荐一款超炫jQuery测试答题功能插件 实例代码 <body><div class="container" id="main">< ...
- android 6.0 数据库权限,Android超清晰6.0权限申请AndPermission
Android超清晰6.0权限申请AndPermission的具体实现代码,供大家参考,具体内容如下 前言 这是我经常使用的框架,原因: 1.思路清晰 2.实现方便 开始 准备工作 导包 compil ...
最新文章
- php中把美国时间转为北京时间的自定义
- python 示例_带有示例的Python date isocalendar()方法
- win7(64,32)下JDK的安装和配置
- php美顏滤镜,PHP GIF / PNG True Colorize滤镜,可保留亮度和Alpha
- 有哪些神预言的科幻电影
- iview render设置属性_iView 发布 3.4.0 版本,代号 BestLuck
- 【图像去噪】基于matlab小波变换+Contourlet变换+PCA图像去噪【含Matlab源码 610期】
- 线性代数及其应用(part2)--特征方程
- java unicode 藏文_藏文各个字母对应的unicode编码和十进制
- Jenkins教程(Windows版)
- webUploader大文件断点续传学习心得
- 呼叫中心系统功能其优势
- 如何在电脑上临时登录微信,快来看这里!怎样在电脑上登录微信
- 图着色问题(超详细!!!)
- 戴尔微型计算机7050配置,小巧彪悍 戴尔 OptiPlex 7050 微型机评测
- Laravel Eloquent ORM字段处理
- 坚果pro android版本,坚果Pro有几个版本 哪个版本好?坚果Pro各版本的区别
- 写项目时怎样将后台管理使用的富文本编辑器保存的内容转为HTML格式
- 以300亿美元收购塞纳,甲骨文为何这么迫切?
- DUI lib学习总结