简析如何用js实现简单轮播

设计思路:利用js当中的定时器实现图片轮播的效果,将所有图片放入img文件夹下,我当时是存放了三张照片。然后将三张照片分别放入三个div,每一个div显示和隐藏都是靠定时器进行控制,左下角有三个数字的div代表这是第几张图片,一共有三张图片所以是三个div。

代码

<!DOCTYPE html>
<html>
<head>
<Meta charset=utf-8 />
<title></title>
<style type=text/css>
.imgBox{
width: 100%;
height:400px;
background-color: black;
transform: 1s;
}
.img{
width: 100%;
height:100%;
background-image: url(img/37fa7b724f5c49cd8c2d0efad885f1a8.jpeg);
background-repeat:no-repeat;
background-size:cover ;
}
.img0{
width: 100%;
height:100%;
background-image: url(img/37fa7b724f5c49cd8c2d0efad885f1a8.jpeg);
background-repeat:no-repeat;
background-size:100% ;
}
.img1{
width: 100%;
height:100%;
background-image: url(img/5572568_110213373115_2.jpg);
background-repeat:no-repeat;
background-size:100% ;
}
.img2{
width: 100%;
height:100%;
background-image: url(img/5875f5fb7a8f8.jpg);
background-repeat:no-repeat;
background-size:100% ;
}
.img3{
width: 100%;
height:100%;
background-image: url(img/980.jpg);
background-repeat:no-repeat;
background-size:100% ;
}
            ul{
margin-left:-30px ;
list-style-type: none;
position: relative;
margin-top: -100px;
line-height: 50px;
}
ul li{
float: left;
width: 50px;
height:50px;
border:1px solid #000000;
text-align: center;
background-color: aliceblue;
}
.div{
background-color: orange;
line-height: 50px;
}
.div1{
background-color: gainsboro;
line-height: 50px;
}
</style>
<script type=text/javascript>
var i=0;
function imgBox(){
   i++;
  if(i<4){
  document.getElementById(img).className=img+i;
  if(i==1){
  document.getElementById(one).className=div;
  document.getElementById(two).className=div1;
  document.getElementById(three).className=div1;
  }
  if(i==2){
     document.getElementById(one).className=div1;
     document.getElementById(two).className=div;
     document.getElementById(three).className=div1;
  }
  if(i==3){
     document.getElementById(one).className=div1;
     document.getElementById(two).className=div1;
     document.getElementById(three).className=div;
  } 
}
if(i==4){
i=0;
clearInterval('imgBox()');
}
}
setInterval('imgBox()',1000);
</script>
</head>
<body>
<div class=imgBox>
<div class=img id=img></div>
<ul id=ul>
<li id=one>1</li>
<li id=two>2</li>
<li id=three>3</li>
</ul>
</div>
</body>
</html>

认识HTML

HTML,就是我们所说的网页,网页的文件格式就是.html格式。在我们眼里,它是一种超文本语言,不需要额外的编译或者处理,写好,打开,就是一个网页。

Html组成由许多标签组成如<p>、<h>、<input>、<img>......,还有一些语义化标签如<header>、<footer>、<nav>....。

什么是js:

js(JavaScript)一种直译式脚本语言。JavaScript脚本可直接放在HTML语言中,在支持js的浏览器上运行。广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。当在浏览网页时做了某种操作就产生一个事件,JavaScript所编写的程序可对相应的事件做出反应。

js定时器:定义定时器setInterval('imgBox()',1000);每隔一秒执行一次imgBox方法, imgBox方法包含图片的改变,还有div颜色的改变

启用定时器

window对象提供了两个方法来实现定时器的效果,分别是window.setTimeout()和window.setInterval。其中前者可以使一段代码在指定时间后运行;而后者则可以使一段代码每过指定时间就运行一次。它们的原型如下:

   window.setTimeout(code,millisec);
   window.setInterval(code,millisec);

其中,code可以是用引号括起来的一段代码,也可以是一个函数名,到了指定的时间,系统便会自动调用函数,当使用函数名作为调用句柄时,不能带有任何参数;而使用字符串时,则可以在其中写入要传递的参数。两个方法中的第二个参数是millisec,表示延时或者重复执行的毫秒数。

具体写法如下:

函数名,不带参数setTimeout (test,1000);字符串,可以执行的代码setTimeout ('test()',1000);匿名函数setTimeout (function(){},1000); 注:setInterval的用法与setTimeout一样

调用函数,带参数setTimeout ('test(参数)',1000);

div布局:使用ul,li进行布局

修改样式如下:

ul{
margin-left:-30px ;//据左部边距
list-style-type: none;//去除认ul样式
position: relative;//采用相对定位
margin-top: -100px;//据顶部边距
line-height: 50px;//行高
}
ul li{
float: left;//浮动
width: 50px;
height:50px;
border:1px solid #000000;//边框
text-align: center;//文字居中
background-color: aliceblue;
}

Html结构:

<div>
<div id=img></div>
<ul id=ul>
<li id=one>1</li>
<li id=two>2</li>
<li id=three>3</li>
</ul>
</div>

Img为大的div盒子,img为图片,<ul>里面包含li为第几张图片

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...