首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js初学者求解?图片自动切换有关问题

2012-11-07 
js菜鸟求解?图片自动切换问题,图片自动切换有问题,从第一个一下就切换到最后,中间两个没播放,代码如下:!D

js菜鸟求解?图片自动切换问题,
图片自动切换有问题,从第一个一下就切换到最后,中间两个没播放,代码如下:
<!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>
  <title></title>
  // <link rel="Stylesheet" type="text/css" href="lunbot.css"/>
  <script type="text/javascript" src="lunbo.js"></script>
</head>
<body>
  <div id="a">
  <ul>
  <li class="b">1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  </ul>
  <div id="c">
  <img id="img" src="imgs/p1.jpg" />
  </div>
  </div> 
</body>
</html>
js代码如下:
var imgArry = ["imgs/p1.jpg", "imgs/p2.jpg", "imgs/p3.jpg", "imgs/p4.jpg"];
var img1;
var i;
window.onload = function () {
  img1 = document.getElementById("img");
  setInterval(show, 2000);
function show()
 {
  for (i = 0; i < imgArry.length; i++)
  {
  img1.setAttribute("src", imgArry[i]);
  }
  }

}; 


[解决办法]
[code=JSscrpt]
var arr=new Array();
arr[0]="imgs/p1.jpg";//放图片地址
arr[1]="imgs/p2.jpg";
arr[2]="imgs/p3.jpg";
arr[3]="imgs/p4.jpg";
var num=0;
setInterval(turnpic,4000); //每隔4秒转换图片
function turnpic(){
idsrc=document.getElementById("img");
if(num==arr.length-1)
    num=0;
else
    num+=1;
idsrc.src=arr[num];
}

[/code]
[解决办法]

JScript code
var arr=new Array(); arr[0]="imgs/p1.jpg";//放图片地址 arr[1]="imgs/p2.jpg"; arr[2]="imgs/p3.jpg"; arr[3]="imgs/p4.jpg"; var num=0; setInterval(turnpic,4000); //每隔4秒转换图片 function turnpic(){   idsrc=document.getElementById("img");   if(num==arr.length-1)         num=0;   else         num+=1;   idsrc.src=arr[num]; }
[解决办法]
for (i = 0; i < imgArry.length; i++)
{
img1.setAttribute("src", imgArry[i]);
},
到头了自然就不跑了,i == imgarry.length-1的时候i-1就可以了
[解决办法]
var imgArry = ["imgs/p1.jpg", "imgs/p2.jpg", "imgs/p3.jpg", "imgs/p4.jpg"];
var img1;
var i;
window.onload = function () {
img1 = document.getElementById("img");
setInterval(show, 2000);
function show()
 {
img1.setAttribute("src", imgArry[i]);
i++
}

};

[解决办法]
应该是这样

var imgArry = ["imgs/p1.jpg", "imgs/p2.jpg", "imgs/p3.jpg", "imgs/p4.jpg"];
var img1;
var i;
window.onload = function () {
img1 = document.getElementById("img");
setInterval(show, 2000);
function show()
 {
img1.setAttribute("src", imgArry[i]);
i++

if(i==imgArry.length)i = 0;
}



};
[解决办法]

JScript code
<!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>  <title></title>  // <link rel="Stylesheet" type="text/css" href="lunbot.css"/>  <script type="text/javascript" src="lunbo.js"></script></head><body>  <div id="a">  <ul>  <li class="b">1</li>  <li>2</li>  <li>3</li>  <li>4</li>  </ul>  <div id="c">  <img id="img" src="imgs/p1.jpg" />  </div>  </div>  </body></html>js代码如下:var imgArry = ["imgs/p1.jpg", "imgs/p2.jpg", "imgs/p3.jpg", "imgs/p4.jpg"];var img1;var i;window.onload = function () {  img1 = document.getElementById("img");  setInterval(show, 2000);function show() {  for (i = 0; i < imgArry.length; i++)//每次调用该函数都循环一下,这样不行,去掉循环  {  img1.setAttribute("src", imgArry[i]);  }  }}; 

热点排行