HTML - 无法设置未定义的属性'src'

时间:2015-06-07 21:44:15

标签: javascript html

这是我的代码,我正在尝试用8张图片做动画,我首先想到的是错误是因为图像是.jpg,但我尝试将它们转换为.gif格式,但代码仍然没有工作,当我尝试运行代码时,我得到一个错误说:“无法设置属性'src'未定义”,我没有看到代码中的任何错误,我试着多次查看它,如果有人可以请帮忙,谢谢。                            G:\ Year 2 \ OOD - 面向对象的开发\ Webpages \ Assignment \ Explosion         

    <script>


    var explosion = new Array(8);
    var c = 0;
    var startExplode;
    var i = 0;




        explosion[0] = 'ex1.jpg'
        explosion[1] = "ex2.jpg"
        explosion[2] = "ex3.jpg"
        explosion[3] = "ex4.jpg"
        explosion[4] = "ex5.jpg"
        explosion[5] = "ex6.jpg"
        explosion[6] = "ex7.jpg"
        explosion[7] = "ex8.jpg"



function explode()
{   
    if(c == 7 | (i > 0 & i <= 1))
    {
        c = 0;
    }   
    else
    {
        c++;
        document.animation.src = explosion[c];  
    }
}


</script>
<body>
<form>
<img src ="ex1.jpg" name = "explosion" position = "fixed">

<input type="button" name="startExplode" value="explode"
    onClick="startExplode=setInterval('explode()',20);">

</form>
</body>

</html>

1 个答案:

答案 0 :(得分:1)

代码有几个问题:

在函数中,AND和OR运算符加倍,而不是单个:

if(c == 7 | (i > 0 & i <= 1))  

应该是:

if(c == 7 || (i > 0 && i <= 1)) 

NEXT,你没有正确引用图像标签,所以SRC不会更新,此外,图像是调用&#34;爆炸&#34;,不是&#34;动画&#34;,至少在你的HTML中。此外,如果您为图像标记提供ID,则可以参考ID(更容易)。

所以代码:

document.animation.src = explosion[c];  

<img src ="ex1.jpg" name = "explosion" position = "fixed">

应该是:

document.getElementById("explosion").src=explosion[c];

<img src="ex1.jpg" name="animation" position="fixed" id="explosion">

我希望这有帮助!