Javascript Image Animation在Firefox或Internet Explorer中不起作用

时间:2012-07-13 12:36:35

标签: javascript html image animation

我使用以下脚本生成图像动画。

适用于Chrome,但不支持Firefox或Internet Explorer ...

的Javascript

var lista = new Array('image1.gif','image1.gif','image1.gif','image1.gif'); 
var tiempo = 500; 
var tempor = null; 
var pos=0; 
var i = 0; 

function boucle_images(){ 
        var nombre_total_images = 6; 
        document.images.centro.src = lista[i] 
        pos=i; 
        i++; 
        i%=nombre_total_images; 
        tempor=setTimeout("boucle_images()",tiempo); 

} 

function avanza(){ 

  if (pos==(lista.length-1)) 
      pos=0; 
  else 
  pos++; 
  document.images.centro.src = lista[pos] 

} 

function retroceso(){ 

  if (pos==0) 
      pos=(lista.length-1); 
  else 
  pos--; 
  document.images.centro.src = lista[pos] 
} 

function automat(){ 
tempor = setTimeout("boucle_images()", tiempo) 
} 

function parar(){ 
clearTimeout(tempor); 
} 

HTML

<table width="52%" border="0" align="center"> 
                <tr> 
                    <td height="482" colspan="2" align="right">
                        <img id="centro" src="imagenes/cargando2.gif" alt="" width="640" height="480" /></td> 
                </tr>
                <tr> 
                    <td align="center"><div class="div_ani_sat">
                        <a href="javascript:retroceso()"><img src="imagenes/atras.png" width="48" height="48" alt="" /></a>
                        <a href="javascript:avanza()"><img src="imagenes/adelante.png" width="48" height="48" alt="" /></a>
                        <a href="javascript:boucle_images()"><img src="imagenes/play.png" width="48" height="48" alt="" /></a>
                        <a href="javascript:parar()"><img src="imagenes/pause.png" width="48" height="48" alt="" /></a></div>
                    </td> 
                </tr> 
            </table> 

不是说我无法在其他浏览器中运行...... 你能帮我吗? 感谢

1 个答案:

答案 0 :(得分:1)

This是在chrome + firefox

中测试的相同代码的工作版本

setTimeout接受第一个参数作为函数的引用。所以,我刚刚将您的tempor=setTimeout("boucle_images()",tiempo)替换为tempor=setTimeout(boucle_images, tiempo)。总是按照这个因素保存一个评估

document.images返回HTML Collection,您可以像数组一样访问[但它不是数组]但不像document.image.centros [至少跨浏览器]因此我将其修复为{{ 1}}