基于Jquery的仿照flash放大图片效果代码


Posted in Javascript onMarch 16, 2011

Html:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<meta http-equiv="Content-Style-Type" content="text/css" /> 
<link rel="stylesheet" type="text/css" href="css/zoomer.css" media="screen" /> 
<title>Zoomer for jQuery</title> 
<style type="text/css"> 
body { 
font: Arial, Helvetica, sans-serif normal 10px; 
margin: 0; padding: 0; 
} 
* {margin: 0; padding: 0;} 
#page{ 
margin:0 auto; 
position:relative; 
width:850px; 
font-family:verdana; 
font-size:12px; 
} 
#content{ 
width:100%; 
} 
pre{ 
border:3px solid #ccc; 
padding:5px; 
font-size:12px; 
font-family:arial; 
} 
.bold{font-weight:bold;} 
.blue{color:blue;} 
.red{color:red;} 
#footer{ 
margin-top:5px; 
text-align:center; 
width:100%; 
height:auto; 
padding:5px; 
background-color:#ccc; 
} 
#logo,#foot { margin-left: 10px; } 
</style> 
</head> 
<body> 
<div id="page"> 
<div id="content"> 
<div class="container"> 
<ul class="thumb"> 
<li><a href="#"><img src="imgs/robots.jpg" alt="Robots like cameras" /></a></li> 
<li><a href="#"><img src="imgs/monster.jpg" alt="Monsters!" /></a></li> 
<li><a href="#"><img src="imgs/santa.jpg" alt="Santa down under" /></a></li> 
<li><a href="#"><img src="imgs/thumb6.jpg" alt="Sponguebob!" /></a></li> 
<li><a href="#"><img src="imgs/thumb7.jpg" alt="Star Wars" /></a></li> 
<li><a href="#"><img src="imgs/hulk.jpg" alt="Hulk Smash!" /></a></li> 
<li><a href="#"><img src="imgs/dino.png" alt="Dinosaur time" /></a></li> 
<li><a href="#"><img src="imgs/orange.jpg" alt="Orange car" /></a></li> 
<li><a href="#"><img src="imgs/alien.jpg" alt="Aliens!" /></a></li> 
<li><a href="#"><img src="imgs/supe.jpg" alt="It's Superman!" /></a></li> 
<li><a href="#"><img src="imgs/garfield.jpg" alt="Where's my lasagne?" /></a></li> 
<li><a href="#"><img src="imgs/bridge.jpg" alt="The bridge at Sunset" /></a></li> 
<li><a href="#"><img src="imgs/peanuts.jpg" alt="Peanuts!" /></a></li> 
<li><a href="#"><img src="imgs/thumb5.jpg" alt="1956 Yellow Car" /></a></li> 
<li><a href="#"><img src="imgs/thumb4.jpg" alt="Ooooh. Pretty" /></a></li> 
<li><a href="#"><img src="imgs/thumb3.jpg" alt="Lets build something" /></a></li> 
<li><a href="#"><img src="imgs/thumb2.jpg" alt="Puppy love" /></a></li> 
<li><a href="#"><img src="imgs/thumb1.jpg" alt="It's a Toy Story" /></a></li> 
</ul> 
</div> 
</div> 
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> 
<script type="text/javascript" src="js/zoomer.js"></script> 
<script type="text/javascript"> 
$(document).ready(function () { 
$('ul.thumb li').Zoomer({ speedView: 200, speedRemove: 400, altAnim: true, speedTitle: 400, debug: false }); 
}); 
</script> 
</body> 
</html>

css:
ul.thumb {float: left;list-style: none;margin: 0; padding: 10px;width: 800px;background-color: white;} 
ul.thumb li {margin: 0; padding: 5px;float: left;position: relative;width: 110px;height: 110px;} 
ul.thumb li img {width: 100px; height: 100px;border: 1px solid #ddd;padding: 5px;background: #f0f0f0;position: absolute;left: 0; top: 0;-ms-interpolation-mode: bicubic; } 
ul.thumb li img.hover {margin-top:15px;background:url(../imgs/thumb_bg.png) no-repeat center center;border: none;} 
.title{position:absolute;width:185px;height:35px;margin:0;font-weight:900;background:url(../imgs/blue.png) no-repeat center center;padding:17px 0 0 0;text-align:center; color: #fff; }

js:
(function ($) { 
$.fn.Zoomer = function (b) { 
var c = $.extend({ speedView: 200, speedRemove: 400, altAnim: false, speedTitle: 400, debug: false }, b); 
var d = $.extend(c, b); 
function e(s) { 
if (typeof console != "undefined" && typeof console.debug != "undefined") 
{ console.log(s) } else { alert(s) } 
} 
if (d.speedView == undefined || d.speedRemove == undefined || d.altAnim == undefined || d.speedTitle == undefined) { 
e('speedView: ' + d.speedView); 
e('speedRemove: ' + d.speedRemove); 
e('altAnim: ' + d.altAnim); 
e('speedTitle: ' + d.speedTitle); 
return false 
} 
if (d.debug == undefined) { 
e('speedView: ' + d.speedView); 
e('speedRemove: ' + d.speedRemove); 
e('altAnim: ' + d.altAnim); 
e('speedTitle: ' + d.speedTitle); 
return false 
} 
if (typeof d.speedView != "undefined" || typeof d.speedRemove != "undefined" || typeof d.altAnim != "undefined" || typeof d.speedTitle != "undefined") { 
if (d.debug == true) { 
e('speedView: ' + d.speedView); 
e('speedRemove: ' + d.speedRemove); 
e('altAnim: ' + d.altAnim); 
e('speedTitle: ' + d.speedTitle) 
} 
$(this).hover(function () { 
$(this).css({ 'z-index': '10' }); 
$(this).find('img').addClass("hover").stop().animate({ marginTop: '-110px', marginLeft: '-110px', top: '50%', left: '50%', width: '175px', height: '181px', padding: '20px' }, d.speedView); 
if (d.altAnim == true) { 
var a = $(this).find("img").attr("alt"); if (a.length != 0) { 
$(this).prepend('<span class="title">' + a + '</span>'); 
$('.title').animate({ marginLeft: '-42px', marginTop: '90px' }, d.speedTitle).css({ 'z-index': '10', 'position': 'absolute', 'float': 'left' }) 
} 
} 
}, function () { 
$(this).css({ 'z-index': '0' }); 
$(this).find('img').removeClass("hover").stop().animate({ marginTop: '0', marginLeft: '0', top: '0', left: '0', width: '100px', height: '100px', padding: '5px' }, d.speedRemove); 
$(this).find('.title').remove() 
}) 
} 
} 
})(jQuery);

在线演示:http://demo.3water.com/js/2011/ZoomerforjQuery/
Javascript 相关文章推荐
JS获取scrollHeight问题想到的标准问题
May 27 Javascript
input 输入框内的输入事件详细分析
Mar 17 Javascript
JS数组排序方法实例分析
Dec 16 Javascript
ES6新特性之模块Module用法详解
Apr 01 Javascript
Webpack打包css后z-index被重新计算的解决方法
Jun 18 Javascript
Mongoose实现虚拟字段查询的方法详解
Aug 15 Javascript
Node.js如何使用Diffie-Hellman密钥交换算法详解
Sep 05 Javascript
浅谈Node模块系统及其模式
Nov 17 Javascript
微信小程序如何获取手机验证码
Nov 04 Javascript
layui form表单提交后实现自动刷新
Oct 25 Javascript
vue项目使用$router.go(-1)返回时刷新原来的界面操作
Jul 26 Javascript
JavaScript 事件代理需要注意的地方
Sep 08 Javascript
jQuery前台数据获取实现代码
Mar 16 #Javascript
最短的IE判断代码
Mar 13 #Javascript
javascript模拟的Ping效果代码 (Web Ping)
Mar 13 #Javascript
js中巧用cssText属性批量操作样式
Mar 13 #Javascript
js中获取事件对象的方法小结
Mar 13 #Javascript
js中关于new Object时传参的一些细节分析
Mar 13 #Javascript
重载toString实现JS HashMap分析
Mar 13 #Javascript
You might like
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
php根据用户名和手机号查询是否存在手机号码
2017/02/16 PHP
PHP微信支付结果通知与回调策略分析
2019/01/10 PHP
PHP多进程通信-消息队列使用
2019/03/08 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
2011/05/24 Javascript
flash遮住div问题的正确解决方法
2014/02/27 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
基于JQuery实现图片轮播效果(焦点图)
2016/02/02 Javascript
vue的props实现子组件随父组件一起变化
2016/10/27 Javascript
angular-ngSanitize模块-$sanitize服务详解
2017/06/13 Javascript
Angular弹出模态框的两种方式
2017/10/19 Javascript
解决layui的form里的元素进行动态生成,验证失效的问题
2019/09/14 Javascript
Nodejs 数组的队列以及forEach的应用详解
2021/02/25 NodeJs
在django中使用自定义标签实现分页功能
2017/07/04 Python
python在线编译器的简单原理及简单实现代码
2018/02/02 Python
python爬取微信公众号文章
2018/08/31 Python
Python 获取主机ip与hostname的方法
2018/12/17 Python
详解python列表(list)的使用技巧及高级操作
2019/08/15 Python
浅析pandas 数据结构中的DataFrame
2019/10/12 Python
python web框架Flask实现图形验证码及验证码的动态刷新实例
2019/10/14 Python
python如何实现不可变字典inmutabledict
2020/01/08 Python
python实现简单颜色识别程序
2020/02/19 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
美国宠物商店:Wag.com
2016/10/25 全球购物
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
同学聚会老师邀请函
2014/01/28 职场文书
国旗下讲话演讲稿
2014/05/08 职场文书
给学校的建议书范文
2014/05/15 职场文书
学生穿着不得体检讨书
2014/10/12 职场文书
2014年乡镇民政工作总结
2014/12/02 职场文书
雷锋的故事观后感
2015/06/10 职场文书
离职证明范本
2015/06/12 职场文书
2016幼儿园中班开学寄语
2015/12/03 职场文书
《落花生》教学反思
2016/02/16 职场文书