基于jquery实现放大镜效果


Posted in Javascript onAugust 17, 2015

各大商城详细页面产品图片特效展示,鼠标滑过小图显示中图,鼠标滑过中图显示大图展示,jquery放大镜效果图片类似图片放大镜展示,提高用户体验设计,jquery 图片放大镜效果是典型的一款图片特效展示。

效果图如下:

基于jquery实现放大镜效果

图片大框初始样式:

<div class="goods-imginfo-bimg-box" style="background-image: url(http://www.od.my/images/201507/thumb_img/142_thumb_P_1435792664520.jpg); position: relative;"></div>

添加放大区域框和放大效果框

picBox=$('.goods-imginfo-bimg-box');
picBox.css('position','relative');
picBox.append('<div class="mag-sbox"></div>');
picBox.append('<div class="mag-box"></div>');

添加样式表

$("head").append('<link rel="stylesheet" type="text/css" href="themes/od/css/mag.css">');

样式

@CHARSET "UTF-";
 .mag-sbox{position: absolute;border: px solid #fff;background-color: rgba(,,,.);cursor: crosshair;z-index: ;display: none;}
 .mag-box{position: absolute;left: %;top:;margin-left: px;border:px solid #ccc;width: %;height:%;
 background-size: cover;background-color: #fff;z-index: ;display: none;
 }
js
 /*
 * 放大镜效果 
 * 不改变前面的代码
 * 添加放大镜效果
 * 给 goods-imginfo-bimg-box;
 * */
 $("head").append('<link rel="stylesheet" type="text/css" href="themes/od/css/mag.css">');
 picBox=$('.goods-imginfo-bimg-box');
 picBox.css('position','relative');
 picBox.append('<div class="mag-sbox"></div>');
 picBox.append('<div class="mag-box"></div>');
 msBox=$('.mag-sbox');
 mBox=$('.mag-box');
 bs=; //倍数
 msBox.css({width:picBox.width()/+'px',height:picBox.height()/+'px'});
 mBox.css({'backgroundSize':bs*+'%'});
 picBox.mousemove(function(e){
  mBox.css('backgroundImage',$(this).css('backgroundImage')); //给大图背景
  if(msBox.css('display')!='block'){ //鼠标放上去,出现范围框和效果框
  msBox.show();
  }
  if(mBox.css('display')!='block'){
  mBox.show();
  }
  /* 鼠标移动 */
  xleft=e.pageX-picBox.offset().left-msBox.width()/;
  if(xleft<){
  xleft=;
  }else if(xleft>picBox.width()-msBox.width()){
  xleft=picBox.width()-msBox.width();
  }
  xtop=e.pageY-picBox.offset().top-msBox.height()/;
  if(xtop<){
  xtop=;
  }else if(xtop>picBox.height()-msBox.height()){
  xtop=picBox.height()-msBox.height();
  }
  msBox.css({'left': xleft+'px','top': xtop+'px'});
  mBox.css({'backgroundPosition':-bs*xleft+'px '+-bs*xtop+'px'});
 });
 picBox.mouseout(function(){
  msBox.hide();
  mBox.hide();
 });

以上代码就是基于jquery实现放大镜效果,希望大家喜欢。

Javascript 相关文章推荐
Javascript 继承机制实例
Aug 12 Javascript
javascript:void(0)使用探讨
Aug 27 Javascript
推荐6款基于jQuery实现图片效果插件
Dec 07 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
Sep 06 Javascript
js验证框架之RealyEasy验证详解
Jun 08 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
Jul 03 Javascript
简单的Vue异步组件实例Demo
Dec 27 Javascript
layer弹出层取消遮罩的方法
Sep 25 Javascript
viewer.js实现图片预览功能
Jun 24 Javascript
解决Nuxt使用axios跨域问题
Jul 06 Javascript
Vue中computed及watch区别实例解析
Aug 01 Javascript
vue 修改 data 数据问题并实时显示操作
Sep 07 Javascript
js实现浏览本地文件并显示扩展名的方法
Aug 17 #Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
Aug 17 #Javascript
js实现匹配时换色的输入提示特效代码
Aug 17 #Javascript
js实现表单Radio切换效果的方法
Aug 17 #Javascript
js下拉选择框与输入框联动实现添加选中值到输入框的方法
Aug 17 #Javascript
jquery动感漂浮导航菜单代码分享
Apr 15 #Javascript
JavaScript判断表单中多选框checkbox选中个数的方法
Aug 17 #Javascript
You might like
PHP - Html Transfer Code
2006/10/09 PHP
一个用php实现的获取URL信息的类
2007/01/02 PHP
apache和php之间协同工作的配置经验分享
2013/04/08 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
2013/06/21 PHP
php中多维数组按指定value排序的实现代码
2014/08/19 PHP
100多行PHP代码实现socks5代理服务器[2]
2016/05/05 PHP
Yii2实现UploadedFile上传文件示例
2017/02/15 PHP
jquery ajax提交表单数据的两种实现方法
2010/04/29 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
2014/06/26 Javascript
express的中间件bodyParser详解
2014/12/04 Javascript
JavaScript+html5 canvas制作色彩斑斓的正方形效果
2016/01/27 Javascript
js css实现垂直方向自适应的三角提示菜单
2016/06/26 Javascript
初识简单却不失优雅的Vue.js
2016/09/12 Javascript
JavaScript实现经典排序算法之选择排序
2016/12/28 Javascript
网页中的图片查看器viewjs使用方法
2017/07/11 Javascript
详解在React里使用&quot;Vuex&quot;
2018/04/02 Javascript
nodejs取得当前执行路径的方法
2018/05/13 NodeJs
JS闭包原理与应用经典示例
2018/12/20 Javascript
es6中使用map简化复杂条件判断操作实例详解
2020/02/19 Javascript
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
Python回调函数用法实例详解
2015/07/02 Python
python实现拓扑排序的基本教程
2018/03/11 Python
python网络爬虫学习笔记(1)
2018/04/09 Python
Python判断字符串是否为字母或者数字(浮点数)的多种方法
2018/08/03 Python
解决Django中修改js css文件但浏览器无法及时与之改变的问题
2019/08/31 Python
python 利用已有Ner模型进行数据清洗合并代码
2019/12/24 Python
pycharm第三方库安装失败的问题及解决经验分享
2020/05/09 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
Carrs Silver官网:英国著名的银器品牌
2020/08/29 全球购物
二年级数学教学反思
2014/01/21 职场文书
初一学生评语大全
2014/04/24 职场文书
国庆节慰问信
2015/02/15 职场文书
2015年爱牙日活动总结
2015/03/23 职场文书
北京青年观后感
2015/06/15 职场文书
干部理论学习心得体会
2016/01/21 职场文书
MySQL 重写查询语句的三种策略
2021/05/10 MySQL