基于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 相关文章推荐
JavaScript开发时的五个注意事项
Dec 08 Javascript
Jquery搜索父元素操作方法
Feb 10 Javascript
JS实现超过长度限制后自动跳转下一款文本框的方法
Feb 23 Javascript
使用AngularJS 应用访问 Android 手机的图片库
Mar 24 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
Jun 24 Javascript
深入理解JS中的Function.prototype.bind()方法
Oct 11 Javascript
全面解析vue中的数据双向绑定
May 10 Javascript
AngularJS中的路由使用及实现代码
Oct 09 Javascript
Angular6 Filter实现页面搜索的示例代码
Dec 02 Javascript
node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】
Mar 07 Javascript
微信小程序云开发之数据库操作
May 18 Javascript
jQuery 图片查看器插件 Viewer.js用法简单示例
Apr 04 jQuery
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
Smarty+QUICKFORM小小演示
2007/02/25 PHP
GBK的页面输出JSON格式的php函数
2010/02/16 PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
2015/10/26 PHP
thinkphp中多表查询中防止数据重复的sql语句(必看)
2016/09/22 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
JS弹出可拖拽可关闭的div层完整实例
2015/02/13 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
用JavaScript来美化HTML的select标签的下拉列表效果
2015/11/17 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
2016/06/25 Javascript
jQuery页面弹出框实现文件上传
2017/02/09 Javascript
ES6学习教程之Map的常用方法总结
2017/08/03 Javascript
Bootstrap Tooltip显示换行和左对齐的解决方案
2017/10/11 Javascript
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
javaScript动态添加Li元素的实例
2018/02/24 Javascript
使用Vuex实现一个笔记应用的方法
2018/03/13 Javascript
js数据类型检测总结
2018/08/05 Javascript
JavaScript实现图片合成下载的示例
2020/11/19 Javascript
[04:11]2014DOTA2国际邀请赛 CIS遗憾出局梦想不灭
2014/07/09 DOTA
浅谈django中的认证与登录
2016/10/31 Python
简单谈谈Python流程控制语句
2016/12/04 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
使用python根据端口号关闭进程的方法
2018/11/06 Python
pandas将多个dataframe以多个sheet的形式保存到一个excel文件中
2019/10/10 Python
Python爬取阿拉丁统计信息过程图解
2020/05/12 Python
基于Python的一个自动录入表格的小程序
2020/08/05 Python
CSS3教程(6):创建网站多列
2009/04/02 HTML / CSS
CSS3 分类菜单效果
2019/05/27 HTML / CSS
编写一个 C 函数,该函数在一个字符串中找到可能的最长的子字符串,且该字符串是由同一字符组成的
2015/07/23 面试题
解释下列WebService名词:WSDL、SOAP、UDDI
2012/06/22 面试题
外贸实习生自荐信范文
2013/11/24 职场文书
营销总监岗位职责范本
2014/02/26 职场文书
纪检干部对照检查材料
2014/08/22 职场文书
Redis实现订单自动过期功能的示例代码
2021/05/08 Redis
tree shaking对打包体积优化及作用
2022/07/07 Java/Android