jquery实现图片放大点击切换


Posted in jQuery onJune 06, 2017

本文实例为大家分享了jquery放大点击切换图片展示的具体代码,供大家参考,具体内容如下

html代码

<body>
<div class="boss">
 <div class="bigimg">
  <img src="img/s1.jpg" height="350" width="350" id="spic"> 
  <div id="mask"></div>
 </div>
 <div class="xia"> <a class="prev"><</a> <a class="next">></a>
  <div class="items">
  <ul>
   <li><img src="img/b1.jpg" height="56" width="56"></li>
   <li><img src="img/b2.jpg" height="56" width="56"></li>
   <li><img src="img/b3.jpg" height="56" width="56"></li>
   <li><img src="img/b1.jpg" height="56" width="56"></li>
   <li><img src="img/b3.jpg" height="56" width="56"></li>
   <li><img src="img/b1.jpg" height="56" width="56"></li>
   <li><img src="img/b1.jpg" height="56" width="56"></li>
   <li><img src="img/b1.jpg" height="56" width="56"></li>
   <li><img src="img/b2.jpg" height="56" width="56"></li>
   <li><img src="img/b3.jpg" height="56" width="56"></li>
  </ul>
  </div>
 </div>
 <div class="zoom">
  <img src="img/b1.jpg" id="bpic">
 </div>
</div>

<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
<script type="text/javascript" src="js/js6.js"></script>

css代码

*{
margin: 0;
padding:0;
}
li{
 list-style: none;
}
.boss{
 position:relative;
 width: 350px;
}
.bigimg{
 width: 350px;
 border: 1px solid #ccc;
 height: 350px;
 position: relative;
}
#mask{
 width: 150px;
 height: 150px;
 background: rgba(255,255,255,0.5);
 position: absolute;
 top: 0;
 left: 0;
 border:1px solid #ccc;
 cursor: pointer;
}

.xia{
 clear:both;
 margin-top:5px;
 width:352px;
}
.xia .prev{
 float:left;
 margin-right:4px;
}
.xia .next{
 float:right;
}
.xia .prev,.xia .next{
 display:block;
 text-align:center;
 width:10px;
 height:54px; 
 line-height:54px;
 border:1px solid #CCC;
 background:#EBEBEB;
 cursor:pointer;
 text-decoration:none;
}
.xia .items{
 float:left;
 position:relative;
 width:322px;
 height:56px;
 overflow:hidden;
}
.xia .items ul{
 position:absolute;
 height:56px;
}
.xia .items ul li{
 float:left;
 width:64px;
 text-align:center;
}
 .xia .items ul li img{
 border:1px solid #CCC;
 padding:2px;
 width:50px;
 height:50px;
}
.xia .items ul li img:hover{
 border:2px solid #FF6600;
 padding:1px;
} 
.zoom{
 width: 350px;
 height: 410px;
 border:1px solid #ccc;
 position: absolute;
 top: 0;
 right: -360px;
 overflow: hidden;
 display: none;
}

jquery代码

var $spic=$("#spic");
var $mask=$("#mask");
var $bigimg=$(".bigimg");
var $bpic=$("#bpic");
$(".items img").on("mouseover",function(){
 
 $spic.attr("src",$(this).attr("src"));//鼠标滑过切换
 $bpic.attr("src",$(this).attr("src"));

});

var l=$bigimg.eq(0).offset().left;
var t=$bigimg.eq(0).offset().top;
var width1=$mask.outerWidth()/2;
var height1=$mask.outerHeight()/2;

var maxl=$bigimg.width()-$mask.outerWidth();
var maxt=$bigimg.height()-$mask.outerHeight();

var bili=$bpic.width()/$spic.width();

$bigimg.mouseover(function(e){
 var maskl=e.clientX-l-width1,maskt=e.clientY-t-height1;
 if(maskl<0) maskl=0;
 if(maskt<0) maskt=0;
 if(maskl>maxl)maskl=maxl;
 if(maskt>maxt)maskt=maxt;

 $mask.css({"left":maskl,"top":maskt});

 $(".zoom").show();

 $bpic.css({"margin-left":-maskl*bili,"margin-top":-maskt*bili});
});


var marginLeft=0
$(".next").click(function(){

 marginLeft=marginLeft-63.5;
 if(marginLeft<-254) marginLeft=-254;

 $(".items ul").css({"margin-left":marginLeft})
})
$(".prev").click(function(){

 marginLeft=marginLeft+63;
 if(marginLeft>0) marginLeft=0;

 $(".items ul").css({"margin-left":marginLeft})
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
BootStrap中jQuery插件Carousel实现轮播广告效果
Mar 27 jQuery
jQuery制作input提示内容(兼容IE8以上)
Jul 05 jQuery
jQuery实现选中行变色效果(实例讲解)
Jul 06 jQuery
jQuery实现用户信息表格的添加和删除功能
Sep 12 jQuery
jQuery EasyUI 折叠面板accordion的使用实例(分享)
Dec 25 jQuery
jQuery替换节点元素的操作方法
Mar 18 jQuery
基于jQuery实现的设置文本区域的光标位置
Jun 15 jQuery
详解jQuery中的getAll()和cleanData()
Apr 15 jQuery
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
jQuery层叠选择器用法实例分析
Jun 28 jQuery
jQuery表单校验插件validator使用方法详解
Feb 18 jQuery
jquery实现拖拽添加元素功能
Dec 01 jQuery
jquery请求servlet实现ajax异步请求的示例
Jun 03 #jQuery
Jquery EasyUI $.Parser
Jun 02 #jQuery
Spring shiro + bootstrap + jquery.validate 实现登录、注册功能
Jun 02 #jQuery
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 #jQuery
jQuery实现web页面樱花坠落的特效
Jun 01 #jQuery
jquery网页加载进度条的实现
Jun 01 #jQuery
jQuery+Ajax实现用户名重名实时检测
Jun 01 #jQuery
You might like
《PHP边学边教》(02.Apache+PHP环境配置――下篇)
2006/12/13 PHP
PHP循环遍历数组的3种方法list()、each()和while总结
2014/11/19 PHP
php遍历目录方法小结
2015/03/10 PHP
javascript里的条件判断
2007/02/27 Javascript
JavaScript 语言的递归编程
2010/05/18 Javascript
javascript new后的constructor属性
2010/08/05 Javascript
基于NodeJS的前后端分离的思考与实践(一)全栈式开发
2014/09/26 NodeJs
AngularJS教程之环境设置
2016/08/16 Javascript
vue.js实现仿原生ios时间选择组件实例代码
2016/12/21 Javascript
深入解析js轮播插件核心代码的实现过程
2017/04/14 Javascript
Cpage.js给组件绑定事件的实现代码
2017/08/31 Javascript
taro开发微信小程序的实践
2019/05/21 Javascript
小程序最新获取用户昵称和头像的方法总结
2019/09/23 Javascript
12 种使用Vue 的最佳做法
2020/03/30 Javascript
详解vue高级特性
2020/06/09 Javascript
Vue为什么要谨慎使用$attrs与$listeners
2020/08/27 Javascript
WebStorm无法正确识别Vue3组合式API的解决方案
2021/02/18 Vue.js
使用python实现拉钩网上的FizzBuzzWhizz问题示例
2014/05/05 Python
python单元测试unittest实例详解
2015/05/11 Python
Python本地与全局命名空间用法实例
2015/06/16 Python
Python数组定义方法
2016/04/13 Python
详解Python实现多进程异步事件驱动引擎
2017/08/25 Python
Pycharm新手教程(只需要看这篇就够了)
2019/06/18 Python
Django urls.py重构及参数传递详解
2019/07/23 Python
如何使用python代码操作git代码
2020/02/29 Python
Python ini文件常用操作方法解析
2020/04/26 Python
简单了解Java Netty Reactor三种线程模型
2020/04/26 Python
Python GUI之tkinter窗口视窗教程大集合(推荐)
2020/10/20 Python
护士专业推荐信
2013/11/02 职场文书
优秀员工年终发言演讲稿
2014/01/01 职场文书
竞聘书怎么写,如何写?
2014/03/31 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
学术会议通知
2015/04/15 职场文书
情感电台广播稿
2015/08/18 职场文书
2019下半年英语教师的教学工作计划(3篇)
2019/09/25 职场文书
JavaScript小技巧带你提升你的代码技能
2021/09/15 Javascript