2011-04-11 24 views
2

我不知道爲什麼我的貓根本不動。我很確定他們也是。如果有人想和/或我做了什麼錯誤的感謝,有人能指出我的意思嗎?JavaScript動畫問題(胖貓跳舞)

<!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>Fat Cat Dancing</title> 
    <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> 
    <script type= "text/javscript"> 
    <![CDATA[ 
    var cats = new Array(3); 
    var fatCat = 0; 
    var direction; 
    var begin; 
cats[0] = "fatcat0.gif"; 
cats[1] = "fatcat1.gif"; 
cats[2] = "fatcat2.gif"; 
function dance() { 
    if (fatCat == 0)  
     direction = "right"; 
    else if (fatCat == 2)   
     direction = "left" 
    if (direction == "right")  
     ++fatCat;  
    else if (direction == "left")   
     --fatCat;  
     document.animation.src = cats[fatCat];  
} 
function startDancing() {  
if (begin)   
    clearInterval(begin);  
    begin = setInterval("dance()",200); 
} 
]]> 
</script> 
    </head> 
    <body> 
    <h1>Fat Cat Dancing</h1> 
    <p><img src="fatcat1.gif" name="animation" alt="animation" id="animation"/></p> 
    <form action= ""> 
    <input type="button" name="run" value="Start Dancing" onClick="startDancing();"/> 
    <input type="button" name="stop" value="Stop Dancing " onClick="clearInterval(begin);"/> 
</form> 
</body> 
</html> 
+0

這裏有什麼問題? – 2011-04-11 19:30:06

+6

貓真的不聽人們告訴他們做什麼。 – 2011-04-11 19:32:10

+1

爲什麼不使用動畫gif? – alexy13 2011-04-11 19:33:27

回答

5

嘗試:

document.getElementById('animation').src = cats[fatCat]; 

你的代碼是假設該元素將可通過名稱爲「文件」的屬性,但它不會。

此外,作爲另一個答案表明,你的「的setInterval()」調用可以只是:

begin = setInterval(dance, 200); 
+0

我已經做到了這一點,它根本不工作。 – norris1023 2011-04-11 19:45:05

+0

@sha它肯定會幫助你很多,如果你能提供一些關於什麼是或不正在發生的細節。是否有JavaScript錯誤?是否加載任何圖像? – Pointy 2011-04-11 19:46:16

+0

當您單擊單擊按鈕時,圖像不會移動。 – norris1023 2011-04-11 19:52:12

0

取出保存在setInterval("dance()",200);線的報價,看看它是否工作。

+0

...也取出()否則它*絕對*將無法正常工作:-) – Pointy 2011-04-11 19:34:34