【jQuery Demo】图片切换效果整理
图片的切换效果有很多,比较常见的有水平滚动、垂直滚动、淡入淡出等。我们接下来一一实现这些效果。
1.水平滚动
1) 我们先来实现HTML页面,代码很简单:
<div id="container">
<ul class="slider">
<li><img src="../imgs/Girls/04.png"/></li>
<li><img src="../imgs/Girls/05.jpg"/></li>
<li><img src="../imgs/Girls/14.jpg"/></li>
<li><img src="../imgs/Girls/17.jpg"/></li>
<li><img src="../imgs/Girls/20.jpg"/></li>
</ul>
<ul class="thumb">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
</ul>
</div>
2)然后我们设置下CSS:
/** CSS Reset **/
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin:; padding:; }
body, button, input, select, textarea { font: 12px/1.5 tahoma, arial, \5b8b\4f53; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; }
address, cite, dfn, em, var { font-style: normal; }
code, kbd, pre, samp { font-family: couriernew, courier, monospace; }
small { font-size: 12px; }
ul, ol { list-style: none; }
a { text-decoration: none; }
a:hover { text-decoration: underline; }
sup { vertical-align: text-top; }
sub { vertical-align: text-bottom; }
legend { color: #000; }
fieldset, img { border:; }
button, input, select, textarea { font-size: 100%; }
table { border-collapse: collapse; border-spacing:; }
/* container */
#container { width: 320px; height: 456px; overflow: hidden; position: relative; margin: 20px auto; }
.slider { position: absolute; }
.slider img { width: 320px; display: block; }
.thumb { position: absolute; bottom: 5px; right: 5px; }
.thumb li { float: left; color: #FF7300; text-align: center; line-height: 16px; width: 16px; height: 16px; font-size: 12px; font-family: Arial; margin: 3px 1px; border: 1px solid #FF7300; background: #fff; cursor: pointer; }
.thumb li:hover,.thumb li.selected { color: #fff; line-height: 16px; width: 16px; height: 16px; font-size: 16px; background: #EF7300; font-weight: bold; }
目前的显示效果如下:

3)接下来,我们需要点击实现图片的切换,下面是实现水平滚动效果的jQuery插件:
;(function ($) {
$.fn.extend({
scrollHorizontal:function () {
var imgCount = $(".slider li").length;
var imgWidth = $(".slider li").eq(0).width();
$(".thumb li").eq(0).addClass("selected");
for (var i=0;i<imgCount;i++){
$(".slider li").eq(i).css({
"left":i*imgWidth+"px",
"position":"absolute"
});
}
// 初始化
$(".thumb li").click(function () {
var theIndex = $(this).index();
var nowIndex = $(".selected").index();
var leftWidth = imgWidth*(nowIndex-theIndex);
$(".thumb li").removeClass("selected");
$(".thumb li").eq(theIndex).addClass("selected");
$(".slider li").animate({left:"+="+leftWidth });
});
}
});
})(jQuery);
4)最后,我们在HTML页面调用这个插件:
<script>
$(document).ready(function () {
$("#container").scrollHorizontal();
})
</script>
5)这样效果就出来了:

2.垂直滚动
上面实现了水平滚动,那垂直滚动就简单了。通过获取图片的高度,然后控制 top 的值就可以了。新建的jQuery插件如下:
;(function ($) {
$.fn.extend({
scrollVertical:function () {
var imgCount = $(".slider li").length;
var imgHeight = $(".slider li").eq(0).height();
$(".thumb li").eq(0).addClass("selected");
for (var i=0;i<imgCount;i++){
$(".slider li").eq(i).css({
"top":i*imgHeight+"px",
"position":"absolute"
});
}
// 初始化
$(".thumb li").click(function () {
var theIndex = $(this).index();
var nowIndex = $(".selected").index();
var topHeight = imgHeight*(nowIndex-theIndex);
$(".thumb li").removeClass("selected");
$(".thumb li").eq(theIndex).addClass("selected");
$(".slider li").animate({top:"+="+topHeight });
});
}
});
})(jQuery);
然后调用这个插件就可以了:
<script>
$(document).ready(function () {
$("#container").scrollVertical();
})
</script>
效果如下:

3.淡入淡出
同样淡入淡出也就很好实现了:
;(function ($) {
$.fn.extend({
fadeInOut:function () {
var imgCount = $(".slider li").length;
var imgHeight = $(".slider li").eq(0).height();
$(".thumb li").eq(0).addClass("selected");
for (var i=1;i<imgCount;i++){
$(".slider li").eq(i).css({
"display":"none"
});
}
$(".thumb li").click(function () {
var theIndex = $(this).index();
var nowIndex = $(".selected").index();
$(".thumb li").removeClass("selected");
$(".thumb li").eq(theIndex).addClass("selected");
$(".slider li").eq(nowIndex).fadeOut();
$(".slider li").eq(theIndex).fadeIn();
});
}
});
})(jQuery);
效果如下:

【jQuery Demo】图片切换效果整理的更多相关文章
- Jquery实现图片切换效果(IE,FF,Goole)都可以正常运行
这里先对标签的样式进行设置(我这里只用了3张图片,可以根据自己的情况,添加) <style type="text/css"> /*展示图片切换的div样式*/ #Sho ...
- jQuery实现多种切换效果的图片切换的五款插件
1:Nivo SliderNivoslider:丰富的图片切换效果 官方网址:https://themeisle.com/plugins/nivo-slider 查看演示:https://www.he ...
- jquery简单的图片切换效果,支持pc端、移动端的banner图片切换开发
详细内容请点击 无意中看见了两年前写的一个图片切换,那会儿刚刚学习网页制作,可以说是我的第一个处女座的jquery图片切换效果.无聊之余对它的宽度稍稍做了一下修改,变成了支持pc端.手机端全屏的ban ...
- 10款好用的 jQuery 图片切换效果插件
jQuery 是一个非常优秀的 Javascript 框架,使用简单灵活,同时还有许多成熟的插件可供选择.其中,最令人印象深刻的应用之一就是对图片的处理,它可以让帮助你在你的项目中加入一些让人惊叹的效 ...
- jquery带按钮的图片切换效果
<!doctype html> <html> <head> <meta charset="gb2312"> <title> ...
- js鼠标滚轮滚动图片切换效果
效果体验网址:http://keleyi.com/keleyi/phtml/image/12.htm HTML文件代码: <!DOCTYPE html PUBLIC "-//W3C// ...
- 精致3D图片切换效果,最适合企业产品展示
这是一个精致的立体图片切换效果,特别适合企业产品展示,可立即用于实际项目中.支持导航和自动播放功能, 基于 CSS3 实现,推荐使用最新的 Chrome,Firefox 和 Safari 浏览器浏览效 ...
- 18款 非常实用 jquery幻灯片图片切换
1.jquery图片滚动仿QQ商城带左右按钮控制焦点图片切换滚动 jquery图片特效制作仿腾讯QQ商城首页banner焦点图片轮播切换效果,带索引按钮控制和左右按钮控制图片切换. 查看演示>& ...
- jquery实现图片切换和js实现图片切换
jquery实现图片切换: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http ...
随机推荐
- 001_JavaScript学习
1,面向对象,事件驱动 2,动态,交互性 3,解释性语言,非强(弱)类型变量:不用声明,解释时检查类型 4,区分大小写,嵌入html,句尾加分号,可以独立保存为一个外部文件,但其中不能包含<sc ...
- P1120 小木棍 [数据加强版] 回溯法 终极剪枝
题目描述 乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过5050. 现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度. 给出每段小木棍的长度 ...
- Python 豆瓣mv爬取
爬取网址:https://www.dbmeinv.com/ 豆瓣mv(现已更名) 注:自制力不好的同学,先去准备营养快线! import requests from bs4 import ...
- 20165220预备作业3 Linux安装及学习
首先对于这第三次作业而言,给我的准备时间确实不多,因为过年回老家6天,没有办法及时的进行学习和思考,回到家中便草草的看了下相关操作跟教程从而完成了作业,这次主要是学习一些基础操作,为开学的Java学习 ...
- c#一步一步实现ORM
本篇适合新手了解学习orm.欢迎指正,交流学习. 现有的优秀的orm有很多. EF:特点是高度自动化,缺点是有点重. Nhibnate:缺点是要写很多的配置. drapper:最快的orm.但是自动化 ...
- SpringMvc请求处理流程与源码探秘
流程梳理 dispatcherServlet作为前端控制器的主要作用就是接受请求与处理响应. 不过它不是传统意义上的servlet,它在接受到请求后采用转发的方式,将具体工作交给专业人士去做. 参与角 ...
- OSFPv3的配置
实验目的 1. 掌握 OSPFv3 的配置方法 2. 掌握在帧中继环境下 OSPFv3 的配置方法 3. 掌握 OSPFv3 NSSA 的配置方法 4. 掌握外部路由汇总的配置 5. 掌握区 ...
- jarvis OJ WEB题目writeup
0x00前言 发现一个很好的ctf平台,题目感觉很有趣,学习了一波并记录一下 https://www.jarvisoj.com 0x01 Port51 题目要求是用51端口去访问该网页,注意下,要用具 ...
- "放管服"改革 清单
全国31个省份已全部公布省级部门权力清单,29个省份公布了责任清单:已有57个国务院部门公布了权力清单:自贸试验区的负面清单已从2013年的193项减至目前的122项…… 2013年以来,党中央.国务 ...
- LR特征维数特别大实时计算问题
美团 https://tech.meituan.com/machinelearning-data-feature-process.html 维数灾难 待续...