1、CSS样式

   <style type="text/css">
html,body,.viewer,.viewer .pic-list,.viewer .pic-list li { width:100%; height:100%; vertical-align:middle;}
.viewer { position:relative; overflow:hidden;}
.viewer .bar { display:none; width:100%; height:28px; line-height:18px; background:#000; position:absolute; bottom:; left:; z-index:;}
.viewer .bar td { padding:5px 10px;}
.viewer .bar a { color:#fff;}
.viewer .list { overflow:hidden;}
.viewer .list li { list-style:none; display:none; overflow:hidden; text-align:center; vertical-align:middle;}
.viewer .list li img { vertical-align:middle;}
.viewer a.arrow { display:none; width:52px; height:42px; line-height:42px; text-align:center; overflow:hidden; color:#fff; background:#000; position:absolute; top:50%; margin-top:-30px; z-index:;}
.viewer a.prev { left:;}
.viewer a.next { right:;}
</style>

2、HTML

     <div class="viewer">
<ul class="list" data="1">
<li><img src="data:images/temp/banner_1.jpg" alt="图片" /></li>
<li><img src="data:images/temp/banner_2.jpg" alt="图片" /></li>
<li><img src="data:images/temp/banner_3.jpg" alt="图片" /></li>
<li><img src="data:images/temp/banner_4.jpg" alt="图片" /></li>
<li><img src="data:images/temp/banner_5.jpg" alt="图片" /></li>
</ul>
<div class="bar">
<table width="100%">
<tr>
<td align="left"><a href="javascript:void(0)" class="bar-prev">上一作品集</a></td>
<td align="center"><a href="javascript:void(0)" target="_blank" class="bar-view">查看原图</a></td>
<td align="right"><a href="javascript:void(0)" class="bar-next">下一作品集</a></td>
</tr>
</table>
</div>
<a href="javascript:Viewer.prev()" class="arrow prev">上一张</a>
<a href="javascript:Viewer.next()" class="arrow next">下一张</a>
</div>

3、Javascript

     <script type="text/javascript">
$(function () {
Viewer.init();
});
var Viewer = {
wrap: $('.viewer'),
listWrap: $('.list'),
list: $('.list li'),
nums: $('.list li').length,
barview: $('.bar-view'),
showbar: true,
init: function () {//初始化
Viewer.show(1);
},
show: function (index) {//显示索引项
if (Viewer.nums == 0) {
Viewer.error();
}
var e = Viewer.list.first();
var p = Viewer.wrap.find('a.prev');
var n = Viewer.wrap.find('a.next');
if (index < 2) {//显示第一项
index = 1;
e = Viewer.list.first();
p.css({ left: -100 });
n.css({ right: 0 });
} else if (index >= Viewer.nums) {//显示最后一项
index = Viewer.nums;
e = Viewer.list.last();
p.css({ left: 0 });
n.css({ right: -100 });
}
else {//显示当前项
p.css({ left: 0 });
n.css({ right: 0 });
e = Viewer.list.eq(index - 1);
}
e.fadeIn().siblings().fadeOut();
Viewer.listWrap.attr('data', index);
Viewer.barview.attr('href', e.find('img').attr('src'));
var m = Viewer.wrap.find('a.arrow');
var c = Viewer.wrap.find('.bar');
Viewer.wrap.mouseover(function () {
m.fadeTo(1, 0.5);
if (Viewer.showbar) {
c.fadeTo(1, 0.5);
}
}).mouseleave(function () {
m.hide();
c.hide();
});
},
prev: function () {//上一项
Viewer.show(parseInt(Viewer.listWrap.attr('data')) - 1);
},
next: function () {//下一项
Viewer.show(parseInt(Viewer.listWrap.attr('data')) + 1);
},
error: function () {//错误提示
Viewer.listWrap.remove();
Viewer.wrap.append('<h5 style=\"text-align:center\">抱歉,出错啦!</h5>');
return false;
}
}
</script>

4、实现效果

下载地址:http://files.cnblogs.com/wyguo/jquery_photo_viewer.zip

jQuery相册预览简单实现(附源码)的更多相关文章

  1. 高性能页面加载技术(流水线加载)BigPipe的C#简单实现(附源码)

    一,BigPipe简介 BigPipe是一个重新设计的基础动态网页服务体系.大体思路是,分解网页成叫做Pagelets的小块,然后通过Web服务器和浏览器建立管道并管理他们在不同阶段的运行.这是类似于 ...

  2. 3.NetDh框架之缓存操作类和二次开发模式简单设计(附源码和示例代码)

    前言 NetDh框架适用于C/S.B/S的服务端框架,可用于项目开发和学习.目前包含以下四个模块 1.数据库操作层封装Dapper,支持多种数据库类型.多库实例,简单强大: 此部分具体说明可参考博客: ...

  3. POI导出大量数据的简单解决方案(附源码)-Java-POI导出大量数据,导出Excel文件,压缩ZIP(转载自iteye.com)

    说明:我的电脑 2.0CPU 2G内存 能够十秒钟导出 20W 条数据 ,12.8M的excel内容压缩后2.68M 我们知道在POI导出Excel时,数据量大了,很容易导致内存溢出.由于Excel ...

  4. AJAX技术之网易滚动新闻的简单实现(附源码)--AJAX

    1.AJAX简介: AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法 ...

  5. PHP+JQuery+Ajax初始化网站基本信息(附源码)--PHP

    一.思路 为了保存用户会员信息的时间长一些,不局限于session的关闭.我们需要将用户信息保存在数据库中,前台每次登录都需要进行校验,来查看用看用户会员信息是否过期,如果没有过期,取出用户会员信息存 ...

  6. jquery自定义插件结合baiduTemplate.js实现异步刷新(附源码)

    上一篇记录了BaiduTemplate模板引擎使用示例附源码,在此基础上对使用方法进行了封装 自定义插件jajaxrefresh.js 代码如下: //闭包限定命名空间 (function ($) { ...

  7. 分享一组很赞的 jQuery 特效【附源码下载】

    作为最优秀的 JavaScript 库之一,jQuery 不仅使用简单灵活,同时还有许多成熟的插件可供选择,它可以帮助你在项目中加入漂亮的效果.这篇文章挑选了8个优秀的 jQuery 实例教程,这些  ...

  8. 基于9款CSS3鼠标悬停相册预览特效

    基于9款CSS3鼠标悬停相册预览特效里面包含九款不同方式的相册展开特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="albums&q ...

  9. 在网站开发中很有用的8个 jQuery 效果【附源码】

    jQuery 作为最优秀 JavaScript 库之一,改变了很多人编写 JavaScript 的方式.它简化了 HTML 文档遍历,事件处理,动画和 Ajax 交互,而且有成千上万的成熟 jQuer ...

随机推荐

  1. PHP 7問世,2億網站效能翻倍有望

    經過10年的漫長等待,PHP 7終於正式問世了.這個影響全球8成網站的開發語言,一舉從5.0版,跳過了功敗垂成的6.0版,一舉進入了7.0時代. 20年前初夏,1995年6月8日,一位愛解決問題的C語 ...

  2. NEWS - InstallShield 2014正式发布

    InstallShield又迎来了新的版本InstallShield 2014,开发版本号Ver 21.0,相关产品信息已经可以从厂商Flexera Software(富莱睿)官方网站获得. 对于中国 ...

  3. 八卦一下黄晓明和Angelababy的电话号码

    最新一期20150605的<奔跑吧兄弟>真是太搞笑了,邓超被大家整的... 但这一期有个细节引起了我的注意,就是Angelababy在现场打电话给黄晓明,而拨键声音十分清晰.一些拥有“绝对 ...

  4. Ejabberd V.S Openfire

    ejabberd Openfire homepage https://www.ejabberd.im/ http://www.igniterealtime.org/projects/openfire/ ...

  5. YAFFS2文件系统分析(转)

    http://blog.chinaunix.net/uid-25314474-id-343665.html 1.前言略. 2.yaffs 文件系统简介按理说这里应该出现一些诸如“yaffs 是一种适合 ...

  6. 封装一个UILabel圆形边框显示进度

    封装了一个UILabel并让它显示圆形的边框,UILabel上面显示百份比,而边框则用Animation绘制到整个圆占指定百分比的点. 这只是我个人想的继承一个UILabel实现的,用到两个CASha ...

  7. 苹果 Mac OS 下查看系统隐藏文件

    Mac OS X中有很多系统隐藏的信息文件, 一般在Finder中都是看不到,也修改不了的. 但通过在"终端"中输入命令, 就可以在Finder中显示出来: defaults wr ...

  8. POJ-1475-Pushing Boxes(BFS)

    Description Imagine you are standing inside a two-dimensional maze composed of square cells which ma ...

  9. java ConcurrentModificationException探究

    当集合结构被修改,会抛出Concurrent Modification Exception. fail-fast会在以下两种情况下抛出ConcurrentModificationException ( ...

  10. Spring3 MVC请求参数获取的几种方法

    Spring3 MVC请求参数获取的几种方法 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value="user/{id}/{name}&q ...