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

一段js代码的有关问题

2012-04-09 
一段js代码的问题(function(){setTimeout(function(){if(aIndex length){aIndex 1}images[0].src c

一段js代码的问题



(function(){
  setTimeout(function(){
  if(aIndex > length){
  aIndex = 1;
  }
  images[0].src = cases["index"+aIndex];
  links[aBefore-1].className = "";
  links[aIndex-1].className = "hover";
  aBefore = aIndex;
  aIndex++;
  setTimeout(arguments.callee,1500)
  },1500)
  })()

学习别人的js代码中,看到一些代码片段不是很懂...
比如上面那一段,有两个setTimeOut,而且两个都是执行的中间的那个方法。个人就觉得是否重复了,
于是就动手去掉了两个setTimeOut中的任意一个,但是无论去掉哪个...这个方法都不能用了。不知道这里是什么原理。

还有就是这里的callee,不知道为什么我就想到了闭包,这里有没有涉及到闭包呢?




[解决办法]
setTimeout只执行一次,所以最后需要一个反复调用自己

热点排行