制作网页里的图片轮播特效

2025-10-14 01:53:42

1、新建项目文件夹如下图所示

制作网页里的图片轮播特效

2、编写index.html文件,代码如下:

<DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>

lunbo

</title>

 <link href="css/style.css" rel="stylesheet"/>

   <script src="js/lunbo.js">

   </script>

</head>

<body>

 <div id="container">

   <div id="list" style="left:-600px;">

     <img src="images/5.jpg" alt="5.pg"/>

     <img src="images/1.jpg" alt="5.pg"/>

     <img src="images/2.jpg" alt="5.pg"/>

     <img src="images/3.jpg" alt="5.pg"/>

     <img src="images/4.jpg" alt="5.pg"/>

     <img src="images/5.jpg" alt="5.pg"/>

     <img src="images/1.jpg" alt="5.pg"/>

   </div>

   <div id="buttons">

     <span index="1"class="on"> </span>

     <span index="2"></span>

     <span index="3"></span>

     <span index="4"></span>

     <span index="5"></span>

   </div>

   <a href="javascript:;" class="arrow" id="prev">&lt;</a>

   <a href="javascript:;" class="arrow" id="next">&gt;</a>

 </div>

</body>

</html>

制作网页里的图片轮播特效

3、编写style.css文件,代码如下:

*{ margin:0px; text-decoration:none;}

  body{margin-top:50px;}

  #container{width:600px; height:400px; position:relative;border:3px solid #333;overflow:      hidden; margin:0 auto;}

  #list{width:4200px; height:400px; position:absolute; z-index:1;}

  #list img{float:left;}

  #buttons{position:absolute; height:10px; width:100px; z-index:2; bottom:20px; left:250px;}

  #buttons span{cursor:pointer;/*假超链接样式*/ float:left; border:1px  solid #fff; width:10px;                 height:10px;     border-radius:10px; background:#333; margin-right:5px;}

  #buttons .on{background:orangered;}

  .arrow{cursor:pointer; display:none; line-height:39px; text-align:center; font-size:36px; 

        font-weight:bold; width:40px; height:40px;  position:absolute; z-index:2; top:180px;

background-color: RGBA(0,0,0,.3); color:#fff;}

   .arrow:hover{background-color:RGBA(0,0,0,.7);}

   #container:hover .arrow{display:block;}

   #prev{left:20px;}

   #next{right:20px;}

制作网页里的图片轮播特效

4、编写control.js文件代码如下

 window.onload=function(){

var container=document.getElementById('container');

var list=document.getElementById('list');

var buttons=document.getElementById('buttons').getElementsByTagName('span');

var pre=document.getElementById('prev');

var next=document.getElementById('next');

var index=1;

var animated=false;

var timer;

function showButton(){

for(var i=0;i<buttons.length;i++){

if(buttons[i].className=='on'){

buttons[i].className='';

break;

}

 }

buttons[index-1].className="on";

}

function animate(offset){

animated=true;

 var newleft=parseInt(list.style.left)+offset;

 var time=300;//位移总时间

 var interval=10;//位移间隔时间

 var speed=offset/(time/interval);//每一次的位移量

 

 function go(){

 if((speed<0&&parseInt(list.style.left)>newleft)||(speed>0&&parseInt(list.style.                  left)<newleft)){

 list.style.left=parseInt(list.style.left)+speed+'px';

 setTimeout(go,interval);

 }

 else{

  animated=false;

  list.style.left=newleft+'px';

          if(newleft>-600){

     list.style.left=-3000+'px'; 

           }

         if(newleft<-3000){

     list.style.left=-600+'px'; 

          }

   }

  }

 go();

}

function play(){

timer=setInterval(function(){

next.onclick();

},3000);

}

function stop(){

clearInterval(timer);

}

 

next.onclick=function(){

if(index==5){

index=1;

}

else{

index+=1;

}

showButton();

if(animated==false){

animate(-600);

}

}

pre.onclick=function(){

if(index==1){

index=5;

}

else{

 index-=1;

}

showButton();

if(animated==false){

   animate(600);

 }

}

 

for(var i=0;i<buttons.length;i++){

buttons[i].onclick=function(){

if(this.className=='on'){

return;

 }

var myIndex=parseInt(this.getAttribute('index'));

var offset=-600*(myIndex-index);

 

index=myIndex;

showButton();

 if(animated==false){

animate(offset);

  }

  }

 }

 

 container.onmouseover=stop;

 container.onmouseout=play;

 play();

}

制作网页里的图片轮播特效

5、images文件的图片截图如下

制作网页里的图片轮播特效

6、运行效果截图如下:

制作网页里的图片轮播特效

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢