jquery+js实现鼠标位移放大镜效果
jQuery实现仿某东商品详情页放大镜效果
用jquery+js实现放大镜效果,效果大概如下图!

效果是不是大家很感兴趣,放大镜查看细节,下边大家可以详细看一看具体是怎么实现的。下边直接看代码!
HTML部分排版
代码就不上了,大概思路就是左右两个DIV,一个用来显示正常显示的页面,一个用来显示放大图片!

js+jquery实现效果代码如下:
var $magPic=$("#magPic");
var $magRic=$("#magRic");
var $mag=$(".mag");
var $boxT=$(".boxT");
$(".ul1 li").mouseenter(function(){
//attr()添加属性
$magPic.attr("src",$(this).find("img").attr("src"));
$magRic.attr("src",$(this).find("img").attr("src"));
});
鼠标点击实现下边图片传到上边图片效果;
//鼠标点击左右两侧发生改变
var marginLeft=0;
$(".boxB .span2").on("click",function(){
marginLeft=marginLeft-63;
if(marginLeft<-252) marginLeft=-252;
$(".boxB .ul1").css({"margin-left":marginLeft});
})
$(".boxB .span1").on("click",function(){
marginLeft=marginLeft+63
if(marginLeft>0) marginLeft=0;
$(".boxB .ul1").css({"margin-left":marginLeft});
})
//放大镜效果
//offset()获取匹配元素在当前视口的相对偏移。,配合LEFT,与TOP使用、
//client获取适口的位置!
//outerWidth元素的宽度包含padding()和border()
var L=$boxT.eq(0).offset().left;
var T=$boxT.eq(0).offset().top;
var mag_width=$mag.outerWidth()/2;
var mag_height=$mag.outerHeight()/2;
var maxL=$boxT.width()-$mag.outerWidth();
var maxT=$boxT.height()-$mag.outerHeight();
var bili=$magRic.width()/$magPic.width();
$boxT.mousemove(function(e){
//document.title=e.clientX+","+e.clientY;
var magL=e.clientX-L-mag_width,magT=e.clientY-T-mag_height;
//行内判断可以用if这种语句、
if(magL<0)magL=0;
if(magT<0)magT=0;
if(magL>maxL)magL=maxL;
if(magT>maxT)magT=maxT;
$mag.css({"left":magL,"top":magT});
/*$(".Bright").show();
$(".mag").show();*/
//可修改为(合并选择器一起返回)
$(".Bright,.mag").show()
//右边显示层效果
$magRic.css({"margin-left":-magL*bili,"margin-top":-magT*bili})
});
$boxT.mouseleave(function(){
$(".Bright").hide();
$(".mag").hide();
$(".Bright,.mag").hide()
})
这里需要计算css的位置,然后用到鼠标适口位置等!
大概就是这样大家可以去试试!
jquery+js实现鼠标位移放大镜效果的更多相关文章
- 原生js实现简单的放大镜效果
前言:相信很多同学在浏览购物网站的时候都会用到过放大镜的功能,这个功能在日常的网站也会经常用到.接下来我们开始实现一下它吧: (1)首先了解一下放大镜效果的html架构:如下图,它由两部分组成. ht ...
- JS实现鼠标移入水波效果
前言 最近比较沉迷JS,所以我现在来做个鼠标的交互效果 HTML <div style="border-radius;position:relative;width:800px;hei ...
- JS框架_(JQuery.js)图片相册掀开切换效果
百度云盘 传送门 密码:y0dk 图片掀开切换效果: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...
- 使用CSS3+jquery.js 实现微信抽奖转盘效果
上次发表了一篇 微信抽奖转盘活动-效果源码分析 最近想起了刚接到这个项目时第一时间脑海里迸出的解决方法 “CSS3”! 为什么不能用CSS3来实现呢? 所以我打算用CSS3来实现这个效果.并不需要依赖 ...
- js购物时的放大镜效果
首先需要两张一样的图片,一张大图,一张小图,大图显示,当鼠标移入时,小图上出现一个滑块,可以滑动,大图也跟着显示,大图的显示区域和小图一样,当滑块滑到不同的位置,大图显示不同的区域,当鼠标移出时,滑块 ...
- js实现鼠标吸附线条效果
如图,箭头→为鼠标位置,鼠标会带有吸附着一些线条的效果,具体效果可在我的博客查看,当然,这也是可很受欢迎很常见的效果了=3= <script> !function(){ function ...
- 关于jQuery中实现放大镜效果
1.1.1 摘要 相信大家都见过或使用过放大镜效果,甚至实现过该效果,它一般应用于放大查看商品图片,一些电商网站(例如:凡客,京东商城,阿里巴巴等)都有类似的图片查看效果. 在接下来的博文中,我们将向 ...
- jQuery实现放大镜效果
1.1.1 摘要 相信大家都见过或使用过放大镜效果,甚至实现过该效果,它一般应用于放大查看商品图片,一些电商网站(例如:凡客,京东商城,阿里巴巴等)都有类似的图片查看效果. 在接下来的博文中,我们将向 ...
- 使用jquery实现放大镜效果
原文:使用jquery实现放大镜效果 实现原理 首先,我们讲解一下放大镜效果的实现方式: 方法一:准备一张高像素的大图,当鼠标放到原图上,加载显示大图的对应位置. 方法二:对原图片进行放大,也就是调整 ...
随机推荐
- ORACLE中关于外键缺少索引的探讨和总结
在ORACLE数据库中,定义外键约束时,ORACLE是不会自动创建对应索引的,必须手动在外键约束相关的列上创建索引.那么外键字段上是否有必要创建索引呢?如果有必要的话,巡检时,如何找出外键字段上没有创 ...
- 面试题 ARC
什么是ARC ?ARC主要解决什么问题? ARC:自动引用计数. 要点..当对象被创建时 retain count+1, 当对象被release时 retain count-1, 当retain co ...
- 149_best-time-to-buy-and-sell-stock
/*@Copyright:LintCode@Author: Monster__li@Problem: http://www.lintcode.com/problem/best-time-to-b ...
- jmeter执行case结果插入DB数据优化
访问初始实现路径:jmeter执行case结果插入DB生成报表和备份记录 借前面实现导入DB数据先说明之前数据的缺点: 第一,若需要依赖接口的数据,会把依赖接口的case统计进去造成数据统计错误.第二 ...
- Java排序算法之希尔(Shell)排序
基本思想: 希尔排序就是对直接插入排序的一个优化.现在有一个array,希尔排序就是设定一个增量incrementNum(0<incrementNum<array.length).先从ar ...
- TC SRM683 Div1 250
大意是有一排石子,每一堆有a[i]个,目标状态每一堆有b[i]个,每一步可以从一堆中取出一个石子转移到相邻的一个,其中1和n也算相邻也即环形.问最少步数. 比赛的时候写了个按照步数贪心的做法,FST了 ...
- split()方法
split()方法用于把一个字符串分隔成字符串数组. 它有两个参数: separator:从参数指定的地方分隔字符串,必需: howmany:该参数可指定返回的数组的最大长度.如果设置了该参数,返回的 ...
- css 设置 checkbox复选框控件的对勾√样式
效果 最终的样式,想要的效果: 我们要创建方框中的对勾,对于这一点,我们可以使用:after伪类创建一个新的元素,为了实现这个样式,我们可以创建一个5px * 15px的长方形并给他加上边框. ...
- 什么是体数据可视化(Volume data visualization)?及体绘制的各种算法和技术的特点?
该文对体数据进行综述,并介绍了体数据的各种算法和技术的特点. 前言 由于3D数据采集领域的高速发展,以及在具有交互式帧率的现代化工作站上执行高级可视化的可能性,体数据的重要性将继续迅速增长. 数据集可 ...
- 关于jstl.jar引用问题及解决方法
在前文SSM说到因为从MyEclipse换成了Eclipse.有些架包自动缺失. 造成:"org.apache.jasper.JasperException: This absolute u ...