[原创] JQ仿淘宝图片局部放大镜效果
有的时候我们需要在页面中展示一些高清大图,但是如果直接放在页面中又会显得很占地方,影响用户体验
或者在一些商城网站中,我们需要展示商品的高清大图,所以就需要一个类似放大镜的效果
具体效果请点击这里:图片放大镜效果
原理很简单,首先加载一个略缩图,提高页面加载速度,然后在鼠标划过略缩图的时候创建一个div来控制背景的background-position的范围展示局部大图,具体代码如下:
<!--
* 作者:罗旧的博客
* 网址:http://www.haoshuzx.com
* 时间:2016-08-29
* e-mail:ydx425@gmail.com
--><!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>图片放大插件</title><script src="jquery-2.1.4.min.js"></script><style>* {margin: 0;padding: 0;}.left {float: left;}.wrap {overflow: hidden;margin: 50px 0 0 50px;position: relative;}.wrap img {border: 1px solid #ccc;}.wrap span {position: absolute;left: 0;top: 0;width: 50px;height: 50px;background: rgba(255, 255, 255, 0.3);display: none;}.zoom {width: 500px;height: 500px;border: 1px dashed #ccc;background: url("001.jpg") no-repeat;background-position: center center;margin-top: 50px;display: none;}</style>
</head>
<body>
<div class="wrap left"><img src="001_thumb.jpg" alt="略缩图"/><span></span>
</div>
<div class="zoom left"></div><script>(function ($) {$.fn.zoom = function () {var img = $(this).find("img");var span = $(this).find("span");var zoom = $(".zoom");//获取略缩图相对于窗口的位置var tLeft = $(img).offset().left;var tTop = $(img).offset().top;$(this).mousemove(function (e) {//获取鼠标坐标var mLeft = e.clientX;var mTop = e.clientY;//计算鼠标相对于图片区域的位置var l = mLeft - tLeft;var t = mTop - tTop;//鼠标移动时移动span$(span).css({"display": "block","left": (l - 25) + "px","top": (t - 25) + "px"});//计算偏移量var ll = (l / $(img).width()) * 100 + "%";var tt = (t / $(img).height()) * 100 + "%";//设置大图偏移$(zoom).css({"display": "block","background-position": ll + " " + tt})});//解除绑定$(this).mouseout(function () {$(span).css("display", "none");$(zoom).css("display", "none");})}})(jQuery);$(".wrap").zoom();
</script></body>
</html>
以上只是简单的实现了效果,在具体项目中,还需要根据实际情况设定大图的加载时间,是页面加载完成之后加载还是用户鼠标划过的时候才加载,可以根据实际需求判断,还需要考虑的就是zoom区域的位置,需要采用绝对定位来避免打乱现有的文档流样式.
点击这里下载源码:图片放大镜效果源码
本文为作者原创文章,转载请注明来自 罗旧的博客,链接:http://www.haoshuzx.com/qianduan/43.html
[原创] JQ仿淘宝图片局部放大镜效果相关推荐
- 仿淘宝图片空间 点击文字 出现可编辑文本框 提交ajax数据到后台修改
思路来源:昨天看淘宝的图片空间,发现了一个效果. 点击宝贝的名字,出现一个可编辑的文本框,然后ajax提交(如果数据变的话),改变数据 看图说明: 编辑完了提交进行修改数据 自己做的代码效果如下: 具 ...
- js仿淘宝主图放大镜功能
js仿淘宝主图放大镜功能 演示地址 下载地址
- 仿淘宝商品放大展示效果制作(放大镜效果)
如果您觉得这篇文章有用,欢迎点赞收藏或有什么建议请在评论区留言,我看到后会第一时间回复的,谢谢! (分享时刻) mac上取色比较好用的小工具:啜色: 好用的截屏小工具:Snipaste (常用的一个功 ...
- 【每日一练】原生js仿淘宝主图放大镜功能,附学习源码
在我们的项目中,经常会遇到各种功能效果的实现,对于每一项功能的实现方式,都有很多种,这些实现方式没有好坏之分,只有适合与否,但是我个人建议,如果项目急就选择自己擅长的方式实现,比较完成工作更加重要嘛. ...
- 用cloud-zoom做一个仿淘宝的宝贝放大镜查看功能
插件我就不多介绍了,在我整理的<常用JQuery插件整理>里介绍,也有示例.但在实际运用中,我发现一个插件无法达到的效果,语言比较难描述,看图说话吧 发现什么问题没有,我做了个demo,虽 ...
- 仿淘宝图片放大预览效果
<html><head><meta http-equiv="Content-Type" content="text/html; charse ...
- vue实现淘宝京东商品放大镜效果
实现原理: 两个盒子,通过映射来同步进行移动,达到移动放大镜的效果. 注意点: 遮罩层的面积/盒子的面积 == 大图展示盒子的面积/大图图片的面积 一定要是等比例的才行,严格控制样式 效果图: 贴上代 ...
- 仿淘宝,天猫评分效果
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- Android仿淘宝加入购物车布局效果
实现效果: 思路:点击购物车弹出一个PopupWindow,主要弄清楚的是PopupWindow的高度以及透明度,图片的位置,图片下层布局的高度(它的高度比popup的低一些).PopupWindow ...
最新文章
- 关于Python类属性与实例属性的讨论
- “春色满园”!谷歌新数据中心有望实现100%可再生能源
- SAP Spartacus API 的事务处理特性
- C#操作配置文件中appSettings,connectionStrings节点
- Memcached 缓存个体,对象,泛型,表
- linux系统打开m3u8文件,M3U8 文件扩展名: 它是什么以及如何打开它?
- 动态规划——双11既可以薅羊毛还能花钱最少
- mysql找出借书超过5本的读者_MySQL 练习题【一】附加题2
- 那些有关求解next数组的算法
- iOS-国家代码选择功能github开源分享
- struts2实现XML异步交互
- 洛谷 P1090 合并果子
- 时间序列深度学习:seq2seq 模型预测太阳黑子
- [Scottgu]ASP.NET vNext系列——数据选择
- define语句换行\后不能有空格
- 机器视觉科学计算可视化_模因视觉:对模因进行分类的科学
- openwrt编译helloworld
- Linux 查看日志命令tail的用法
- 配置caffe matlab 中遇到的坑
- 对JavaEE的理解
热门文章
- cs/bs的基本概念
- python抓取招聘数据_Python爬取招聘网站数据并做数据可视化处理
- java获取某一年某一月的最后一天
- 电脑基站测试软件,Signalsitemap PC Tools(阿达基站路测PC辅助工具) V3.50 官方版
- python取模运算_Python中的取模运算方法
- 深度学习caffe实战(一)验证码识别
- 华南理工大学计算机系就业率,21考研择校:华南理工大学就业率和薪酬情况统计!...
- 学数据分析师有专业要求吗?
- Istio系列学习(八)----Istio的目标规则:DestinationRule
- 面对人工智能,法律应该做什么