jQuery照片伸缩效果不影响其他元素的布局


Posted in Javascript onMay 09, 2014

之前在网上看到这种特效,无奈当时没有收藏网址,导致后来一度不知道这个特效是怎么实现的。今天特意在网上搜罗了一下,果然功夫不负有心人,被我找到了。

我也努力过自己尝试着写:

但只是单纯的图片放大,而且还影响了图片周围的元素的布局(因为图片放大占据了更大的空间)。

后来发现要灵活巧妙的运用overflow和position这两个属性,就能达到目的。其实我觉得CSS(CSS3)中的overflow和position(顺带的top,bottom,left,right)简直是做网页特效无解的组合,当然还是js(jquery)是老大。

废话说了这么多,大家肯定还是很疑惑:这到底是什么特效呢?唉,我的语言表达能力还是很一般,下面我就截图来说明好了:

这个是网页打开的初始模样:
jQuery照片伸缩效果不影响其他元素的布局 
当把鼠标停留在以上6张图片的任意一张图片的时候,会出现我所说的特效(这里我把鼠标放在第3张作为示例):
jQuery照片伸缩效果不影响其他元素的布局 
你会发现图片是缩小了,鼠标放开图片感觉又放大了(回到初始状态),而没有图片溢出的现象,而且不影响其他图片和元素的布局。

下面贴代码了:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title>jQuery照片伸缩效果</title> 
</head> 
<!-- The Style --> 
<style type="text/css"> 
*{ 
margin: 0; 
padding: 0; 
} 
body{ 
font-family: "Myriad Pro", "Trebuchet MS", Helvetica, sans-serif; 
font-size: 12px; 
color: #fff; 
} 
#col { 
width: 600px; 
height:400px; 
margin: 20px auto 0px auto; 
border: 1px solid #2D353F; 
} 
.pic { 
width: 200px; 
height: 200px; 
margin: 0px; 
overflow: hidden;/*这边定义了overflow为hidden*/ 
position: relative;/*这边定义了position为relative,这其实是为了下面的img的position可以依照pic定位*/ 
float: left; 
} 
/*图片的原始大小是500*333左右*/ 
/*这里并没有对width宽度做文章,是对height高度做文章的*/ 
.pic a img { 
height: 500px; 
border: none; 
position: absolute; /*正因为父标签定义了position,这边img定义position才有定位依据,要不然就是对于整个浏览器进行定位*/ 
top: -66.5px; 
left: -150px; 
opacity: 0.5; 
-moz-opacity: 0.5; 
filter: progid:DXImageTransform.Microsoft.Alpha(opacity=50);/*这边为了兼容浏览器,和opacity属性的作用是一样的*/ 
} </style> 
<!-- The JavaScript --> 
<script type="text/javascript" src="js/jquery.min.js"></script> 
<script type="text/javascript"> 
$(function() { 
$('#col img').hover( 
function(){ 
var $this = $(this); 
$this.stop().animate({'opacity':'1.0','height':'200px','top':'0px','left':'0px'}); 
}, 
function(){ 
var $this = $(this); 
$this.stop().animate({'opacity':'0.5','height':'500px','top':'-66.5px','left':'-150px'}); 
} 
); 
}); 
</script> 
<body> 
<div id="col"> 
<div class="pic"> 
<a href="#"> 
<img src="Images/1.jpg"/> 
</a> 
</div> 
<div class="pic"> 
<a href="#"> 
<img src="Images/2.jpg"/> 
</a> 
</div> 
<div class="pic"> 
<a href="#"> 
<img src="Images/3.jpg"/> 
</a> 
</div> 
<div class="pic"> 
<a href="#"> 
<img src="Images/4.jpg"/> 
</a> 
</div> 
<div class="pic"> 
<a href="#"> 
<img src="Images/5.jpg"/> 
</a> 
</div> 
<div class="pic"> 
<a href="#"> 
<img src="Images/6.jpg"/> 
</a> 
</div> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
javascript中的对象和数组的应用技巧
Jan 07 Javascript
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
Jan 09 Javascript
js中的屏蔽的使用示例
Jul 30 Javascript
删除javascript中注释语句的正则表达式
Jun 11 Javascript
js实现简单排列组合的方法
Jan 27 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
Sep 28 Javascript
vue如何集成raphael.js中国地图的方法示例
Aug 15 Javascript
webpack4.0 入门实践教程
Oct 08 Javascript
[jQuery] 事件和动画详解
Mar 05 jQuery
详解用场景去理解函数柯里化(入门篇)
Apr 11 Javascript
js如何实现元素曝光上报
Aug 07 Javascript
JS如何判断对象是否包含某个属性
Aug 29 Javascript
js四舍五入数学函数round使用实例
May 09 #Javascript
JavaScript实现的购物车效果可以运用在好多地方
May 09 #Javascript
关于Javascript 对象(object)的prototype
May 09 #Javascript
javascript字母大小写转换的4个函数详解
May 09 #Javascript
js统计页面的来访次数实现代码
May 09 #Javascript
JavaScript Array对象扩展indexOf()方法
May 09 #Javascript
js获取鼠标点击的位置实现思路及代码
May 09 #Javascript
You might like
PHP 开发环境配置(Zend Studio)
2010/04/28 PHP
PHP+SQL 注入攻击的技术实现以及预防办法
2011/01/27 PHP
Javascript 表单之间的数据传递代码
2008/12/04 Javascript
分享javascript计算时间差的示例代码
2020/03/19 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
jQuery在header中设置请求信息的方法
2017/03/06 Javascript
AngularJs的UI组件ui-Bootstrap之Tooltip和Popover
2018/07/13 Javascript
ES6使用export和import实现模块化的方法
2018/09/10 Javascript
如何提升vue.js中大型数据的性能
2019/06/21 Javascript
小程序表单认证布局及验证详解
2020/06/19 Javascript
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
[50:27]Secret vs VG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python批量添加zabbix Screens的两个脚本分享
2017/01/16 Python
python+selenium实现自动化百度搜索关键词
2019/06/03 Python
Django中自定义查询对象的具体使用
2019/10/13 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
python离线安装外部依赖包的实现
2020/02/13 Python
Django自定义列表 models字段显示方式
2020/04/03 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
Python通过类的组合模拟街道红绿灯
2020/09/16 Python
英国著名的药妆网站:Escentual
2016/07/29 全球购物
ToysRus日本官网:玩具反斗城
2018/09/08 全球购物
英国设计的甲板鞋和船鞋:Chatham
2018/12/06 全球购物
经理秘书找工作求职信
2013/12/19 职场文书
竞争上岗演讲稿
2014/01/05 职场文书
模具毕业生推荐信
2014/02/15 职场文书
餐厅楼面部长岗位职责范文
2014/02/16 职场文书
踏青活动策划方案
2014/08/19 职场文书
七一讲话心得体会
2014/09/05 职场文书
对外汉语专业大学生职业生涯规划书
2014/10/11 职场文书
2014年协会工作总结
2014/11/22 职场文书
禁毒心得体会范文
2016/01/15 职场文书
医生行业员工的辞职信
2019/06/24 职场文书
使用golang编写一个并发工作队列
2021/05/08 Golang
Springboot-cli 开发脚手架,权限认证,附demo演示
2022/04/28 Java/Android