案例三 、自己写一个轮播图
来源:互联网 发布:算法导论 编辑:程序博客网 时间:2024/06/05 08:47
当不能用bootstrap外部框架时,自己写一个轮播图。
首先定义一个装所有组件的盒子,div class为content。里面包含了图片区域,底下的小圆圈区域和左右箭头区域。
该案例可以实现点击底下对应的小圆圈换图,点击左右箭头换图,以及自动轮播。
<!DOCTYPE html>
<html>
<head>
<title>轮播图</title>
<style type="text/css">
*{ //清除默认样式
margin: 0;
padding: 0;
}
#content{
width: 1000px;
height: 409px;
margin: 0 auto;
position: relative;
overflow: hidden;
}
.bg li{
list-style: none;
float: left;
display: none;
}
.bg li.current{
display: block;
}
.indicator{
position: absolute;
bottom: 20px;
left: 400px;
}
.indicator li{
width: 12px;
height: 12px;
list-style: none;
float: left;
border-radius: 6px;
cursor: pointer;
background: #ccc;
margin-left:6px;
}
.indicator .current{
background-color: #00a3d2;
}
.right,.left{
position: absolute;
top: 180px;
cursor: pointer;
}
.left{
left: 30px;
}
.right{
right: 30px;
}
</style>
<script src = "http://libs.baidu.com/jquery/1.10.2/jquery.min.js"></script>
<script>
var index = 0;
$(function(){
//找到所有的图片
var pics = $(".bg li");
var lis = $(".indicator li");
//提取一个公共的换图方法
function changpic(){
//控制li的class换图
pics.eq(index).addClass("current").siblings().removeClass("current");
lis.eq(index).addClass("current").siblings().removeClass("current");
}
//点击小圆点换图
lis.click(function(){
//去改变index的值
index = $(this).index();//this代表当前每一个li元素
console.log(index);
//调用换图的函数
changpic();
});
//点击左右箭头换图
$(".left").click(function(){
index--;
//当下标值小于0时,即等于-1,那么就从最后一个开始
if(index == -1){
index = 4;
}
changpic();
});
$(".right").click(function(){
index++;
//当下标值大于4,则让index从0开始
if(index == 5){
index = 0;
}
changpic();
});
//当需要自动轮播时需要用setInterval( )函数。仿照前面右箭头的轮播方式,先轮播,最后index++,使间隔时间为5秒。最后不要忘了调用函数
function play(){
setInterval(function(){
if(index == 5){
index = 0;
}
changpic();
index++;
},5000);
}
play();
});
</script>
</head>
<body>
<div id = "content">
<ul class = "bg">
<li class = "current"><a href = "#"><img src = "bg_1.jpg" /></li>
<li><a href = "#"><img src = "bg_2.jpg" /></li>
<li><a href = "#"><img src = "bg_3.jpg" /></li>
<li><a href = "#"><img src = "bg_4.jpg" /></li>
<li><a href = "#"><img src = "bg_5.jpg" /></li>
</ul>
<ul class = "indicator">
<li id = "bg_1" class = "current"></li>
<li id = "bg_2"></li>
<li id = "bg_3"></li>
<li id = "bg_4"></li>
<li id = "bg_5"></li>
</ul>
<img class = "left" src = "l.png">
<img class = "right" src = "r.png">
</div>
</body>
</html>
1 0
- 案例三 、自己写一个轮播图
- 自己写一个MVC框架(三)
- (三)自己写一个HelloWorld类
- symfony2中自己写的一个事件监听案例
- 如何写一个给自己的框架写一个优雅的Java Config模块(三)
- 利用java的异常处理自己写个一个图书借阅系统的小案例
- 自己写了一个图书管理案例,请大家指点一下!
- 自己写一个LIST
- 自己写一个UISwitch
- 自己写一个类
- 自己写一个框架
- 自己写一个ajax
- 自己写一个死锁
- 使用正则表达式写一个网页爬虫案例获取指定文档中的邮件地址保存到自己指定的文件夹中
- 写一个自己的引擎
- 写一个自己的引擎
- 每天自己写一个方法
- 如何自己写一个日历
- 使用GitBook工具生成PDF格式的文档
- Thymeleaf条件判断
- [LeetCode]335. Self Crossing
- 欢迎使用CSDN-markdown编辑器
- socket文件
- 案例三 、自己写一个轮播图
- Python学习笔记(五)--模块
- JVM虚拟机
- ie11计算*的长度
- 淘宝动画
- Eclipse新建Servlet时候,不会自动生成mapping到web.xml,而是在代码中加入注解@WebServlet
- linux下rdesktop用法
- 最大子列和问题 PAT 1007
- 【Spring MVC】深度探险SpringMVC(一)——开篇小序