基于jquery实现图片广告轮换效果代码


Posted in Javascript onJuly 07, 2011

效果图:
基于jquery实现图片广告轮换效果代码
实现代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>hotmarquee</title> 
<style type="text/css"> 
* 
{ 
margin: 0; 
padding: 0; 
} 
body 
{ 
font: 12px; 
padding-top: 50px; 
padding-right: 200px; 
padding-bottom: 100px; 
padding-left: 200px; 
} 
ul 
{ 
list-style: none; 
} 
img 
{ 
padding: 2px; 
border: 1px solid #eee; 
} 
a 
{ 
outline: none; 
} 
#imgs 
{ 
width: 410px; 
margin-right: auto; 
margin-left: auto; 
} 
.top, .btm 
{ 
background: url(../images/sprite.gif) no-repeat; 
overflow: hidden; 
} 
.top 
{ 
background-position: 0 0; 
height: 5px; 
} 
.btm 
{ 
height: 7px; 
} 
.mid 
{ 
width: 400px; 
padding: 5px 7px 0; 
border: 1px solid #999; 
} 
.mid ul 
{ 
width: 400px; 
height: 600px; 
background: #fff; 
position: relative; 
overflow: hidden; 
} 
.mid ul li 
{ 
width: 400px; 
height: 600px; 
position: absolute; 
left: 490px; 
top: 0; 
} 
.mid ul li.first 
{ 
left: 0; 
} 
#img_list 
{ 
width: 486px; 
height: 20px; 
padding-top: 5px; 
overflow: hidden; 
height: 1%; 
} 
#img_list a 
{ 
display: block; 
width: 14px; 
height: 14px; 
text-indent: -9999px; 
float: left; 
margin-right: 5px; 
background: url(../images/sprite.gif) no-repeat 0 -13px; 
} 
#img_list a:hover, #img_list a.active 
{ 
background-position: -14px -13px; 
} 
</style> 
<script src="../Scripts/jquery-1.4.1-vsdoc.js" type="text/javascript"></script> 
<script type="text/javascript"> 
var curr = 0, next = 0, count = 0; 
$(document).ready(function () { 
// 记录图片的数量 
count = $('#img_list a').size(); 
t = setInterval('imgPlay()', 3000); 
// 鼠标移动到图片或导航上停止播放,移开后恢复播放 
$('#imgs li, #img_list a').hover(function () { 
clearInterval(t); 
}, function () { 
t = setInterval('imgPlay()', 3000); 
}); 
//点击导航播放到相应的图片 
$('#img_list a').click(function () { 
// index()函数返回当前导航的下标 
var index = $('#img_list a').index(this); 
if (curr != index) { 
play(index); 
curr = index; 
}; 
return false; 
}); 
}); 
// 播放图片的函数 
var imgPlay = function () { 
next = curr + 1; 
// 若当前图片播放到最后一张,这设置下一张要播放的图片为第一张图片的下标 
if (curr == count - 1) next = 0; 
play(next); 
curr++; 
// 在当前图片的下标加1后,若值大于最后一张图片的下标,则设置下一轮其实播放的图片下标为第一张图片的下标,而next永远比curr大1 
if (curr > count - 1) { curr = 0; next = curr + 1; } 
}; 
// 控制播放效果的函数 
var play = function (next) { 
// 当前的图片滑到左边-500px,完成后返回到右边490px 
// 下一张图片滑到0px处,完成后导航的焦点切换到下一个点上 
$('#imgs li').eq(curr).css({ 'opacity': '0.5' }).animate({ 'left': '-500px', 'opacity': '1' }, 'slow', function () { 
$(this).css({ 'left': '490px' }); 
}).end() 
.eq(next).animate({ 'left': '0px', 'opacity': '1' }, 'slow', function () { 
$('#img_list a').siblings('a').removeClass('active').end().eq(next).addClass('active'); 
}); 
}; 
</script> 
</head> 
<body> 
<div id="imgs"> 
<div class="mid"> 
<ul> 
<li class="first"><a href="http://meinv.vs2010.com/topic/7/201107/show-id2231.html" 
target="_blank"> 
<img src="http://meinv.vs2010.com/DownLoad/2011-7-6/e9c17b8d52e14757b03729fe57dac21f.jpg" 
alt="1" /></a></li> 
<li><a href="http://meinv.vs2010.com/topic/7/201106/show-id2130.html" target="_blank"> 
<img src="http://meinv.vs2010.com/DownLoad/2011-7-2/2aaaba4b512c4af9ad335d962ea1b00e.jpg" 
alt="2" /></a></li> 
<li><a href="http://meinv.vs2010.com/topic/7/201106/show-id2184.html" target="_blank"> 
<img src="http://meinv.vs2010.com/DownLoad/2011-7-1/622f65f85622417f8c19a47545265c41.jpg" 
alt="3" /></a></li> 
<li><a href="http://meinv.vs2010.com/topic/7/201106/show-id2163.html" target="_blank"> 
<img src="http://meinv.vs2010.com/DownLoad/2011-6-25/81575b5f42ff417e85c13f9a77054f8c.jpg" 
alt="4" /></a></li> 
</ul> 
<div id="img_list"> 
<a href="#1" class="active">1</a> <a href="#2">2</a> <a href="#3">3</a> <a href="#4"> 
4</a> 
</div> 
</div> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
js去除空格的12种实用方法
Nov 08 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
Jun 26 Javascript
判断日期是否能跨月查询的js代码
Jul 25 Javascript
jquery选择器需要注意的问题
Nov 26 Javascript
node.js中的console.assert方法使用说明
Dec 10 Javascript
JavaScript中的lastIndexOf()方法使用详解
Jun 06 Javascript
angularJs中datatable实现代码
Jun 03 Javascript
深入浅析Node.js单线程模型
Jul 10 Javascript
老生常谈javascript的面向对象思想
Aug 22 Javascript
可能被忽略的一些JavaScript数组方法细节
Feb 28 Javascript
新手简单了解vue
May 29 Javascript
vue中template的三种写法示例
Oct 21 Javascript
jquery调用wcf并展示出数据的方法
Jul 07 #Javascript
基于json的jquery地区联动效果代码
Jul 06 #Javascript
JQury slideToggle闪烁问题及解决办法
Jul 05 #Javascript
jquery中通过过滤器获取表单元素的实现代码
Jul 05 #Javascript
jquery中获取元素的几种方式小结
Jul 05 #Javascript
JavaScript 判断日期格式是否正确的实现代码
Jul 04 #Javascript
Javascript计算时间差的函数分享
Jul 04 #Javascript
You might like
PHP中__get()和__set()的用法实例详解
2013/06/04 PHP
PHP中使用memcache存储session的三种配置方法
2014/04/05 PHP
thinkPHP订单数字提醒功能的实现方法
2016/12/01 PHP
JS无法捕获滚动条上的mouse up事件的原因猜想
2012/03/21 Javascript
创建公共调用 jQuery Ajax 带返回值
2012/08/01 Javascript
JS可以控制样式的名称写法一览
2014/01/16 Javascript
简单js代码实现selece二级联动(推荐)
2014/02/18 Javascript
jQuery中$.each使用详解
2015/01/29 Javascript
深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
2015/12/16 Javascript
Bootstrap框架动态生成Web页面文章内目录的方法
2016/05/12 Javascript
nginx配置React静态页面的方法教程
2017/11/03 Javascript
浅谈vuex 闲置状态重置方案
2018/01/04 Javascript
浅谈Vue-cli单文件组件引入less,sass,css样式的不同方法
2018/03/13 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
layui lay-verify form表单自定义验证规则详解
2019/09/18 Javascript
解决vue请求接口第一次成功,第二次失败问题
2020/09/08 Javascript
[00:20]TI9观赛名额抽取Ⅱ
2019/07/24 DOTA
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
使用Python脚本在Linux下实现部分Bash Shell的教程
2015/04/17 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
代码分析Python地图坐标转换
2018/02/08 Python
Django 限制用户访问频率的中间件的实现
2018/08/23 Python
Python操作Sonqube API获取检测结果并打印过程解析
2019/11/27 Python
Django admin管理工具TabularInline类用法详解
2020/05/14 Python
keras .h5转移动端的.tflite文件实现方式
2020/05/25 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
意大利和国际最佳时尚品牌:Drestige
2019/12/28 全球购物
十佳大学生村官事迹
2014/01/09 职场文书
心理健康教育制度
2014/01/27 职场文书
个人现实表现材料
2014/02/04 职场文书
民生工作实施方案
2014/05/31 职场文书
奥运会口号
2014/06/13 职场文书
2016年“七一建党节”广播稿
2015/12/18 职场文书
2019年浪漫婚礼证婚词
2019/06/27 职场文书
只用Python就可以制作的简单词云
2021/06/07 Python
Java数组与堆栈相关知识总结
2021/06/29 Java/Android