用box固定长宽实现图片自动轮播js代码

  这个小DEMO,主要用box固定长宽用于显示图片,将图片放入imagebox中,连接起来,每次换图片则将imagebox的style属性的margin-left改动,能形成轮播的效果。

  

复制代码 代码如下:

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  <html xmlns="http://www.w3.org/1999/xhtml">

  <head>

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <title>无标题文档</title>

  <style>

  .box {

  width: 900px;

  height: 350px;

  margin: 20px;

  overflow: hidden;

  margin:0 auto;

  }

  .imagebox {

  width: 3600px;

  height: 350px;

  -webkit-transition: all 1s ease-in-out;

  -moz-transition: all 1s ease-in-out;

  -o-transition: all 1s ease-in-out;

  transition: all 1s ease-in-out;

  }

  .imagebox img {

  width: 900px;

  float: left;

  height: 350px;

  }

  </style>

  </head>

  <body>

  <div class="box">

  <div id="ImageBox" class="imagebox">

  <img class="trans_image" src="images/图片点击轮转/image-53.jpg" />

  <img class="trans_image" src="images/图片点击轮转/image-54.jpg"/>

  <img class="trans_image" src="images/图片点击轮转/image-55.jpg"/>

  <img class="trans_image" src="images/图片点击轮转/image-56.jpg"/>

  </div>

  </div>

  <div>

  <input type="button" value="left" onclick="turnleft()"/>

  <input type="button" value="right" onclick="turnright()"/>

  </div>

  <script language="javascript">

  var int=setInterval("change()",3*1000);

  var a=document.getElementById("ImageBox");

  var i=1;

  function change(){

  if(i==4){

  i=0;

  }

  i=i+1;

  a.style.marginLeft=(1-i)*900+"px";

  }

  function stopchange(){clearInterval(int);}

  function startchange(){int=setInterval("change()",2*1000);}

  a.onmouseover=function(){clearInterval(int);}

  a.onmouseout=function() {int=setInterval("change()",2*1000);}

  function turnleft(){

  stopchange();

  i=i+1;

  a.style.marginLeft=(1-i)*900+"px";

  if(i==4){

  i=0;

  }

  startchange();

  }

  function turnright(){

  stopchange();

  if(i>1){

  a.style.marginLeft=(2-i)*900+"px";

  i=i-1;

  }else{

  a.style.marginLeft=-3*900+"px";

  i=4;

  }

  startchange();

  }

  </script>

  </body>

  </html>