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. linux之cp/scp命令+scp命令详解(转)

    名称:cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source... directory 说明:将一个档案拷贝至另一档案,或将数 ...

  2. JPA的事务注解@Transactional使用总结

    在项目开发过程中,如果您的项目中使用了Spring的@Transactional注解,有时候会出现一些奇怪的问题,例如: 明明抛了异常却不回滚? 嵌套事务执行报错? ...等等 很多的问题都是没有全面 ...

  3. C#通过SQL 添加,删除,或者修改表名。

    这是我在 https://forums.asp.net/t/2106051.aspx?Create+Dynamic+table+in+SQL+using+C+ 的回复,如果其他人需要,可以参考 如果你 ...

  4. android 图片占用内存与什么有关

    android 图片占用内存与什么有关 原文链接:http://blog.csdn.net/zjl5211314/article/details/7041813 在开发手机应用的时候,内存是有限的,那 ...

  5. VS.PHP详细破解教程,用Visual Studio编写PHP代码插件PhpTools

    一.准备文件:(下载地址:http://download.csdn.net/detail/wulang1988/9662363) Default.aspx是解决在线破解文件:PhptoolCracke ...

  6. 【转】android适配各种分辨率的问题

    http://blog.csdn.net/r8hzgemq/article/details/8243119   Android设备屏幕的尺寸是各式各样的,如小米是4英寸的,Xoom平板是10英寸:分辨 ...

  7. 记录一下,如何配置nodejs nginx的反向代理

    本文是在mac下配置nodejs 在nginx下的反向代理 1.安装nodejs,之前就安装了. 2.安装nginx ,我采用的直接源码安装 3.进入 /usr/local/nginx/conf 目录 ...

  8. fastreport totalpage 只有设置doublepassreport为true 才正确否则为0

    fastreport totalpage 只有设置doublepassreport为true 才正确否则为0

  9. Opengl的gl_NormalMatrix【转】

    原文地址:http://blog.csdn.net/ichild1964/article/details/9728357 参考:http://www.gamedev.net/topic/598985- ...

  10. sqlite 的比较等运算是根据不同的值而不同的,并不是根据的字段类型,因为 sqlite 是弱类型字段

    sqlite 的比较等运算是根据不同的值而不同的,并不是根据的字段类型,因为 sqlite 是弱类型字段   --------------------------------------------- ...