2013-03-25 160 views
4

我是一個html5的初學者,在一個簡單的程序中面臨這個問題,在屏幕上移動圖像。它是一個簡單的pacman程序,我使用了兩個圖像。一個是嘴巴張開,另一個嘴巴閉合的pacman當我試圖在屏幕上向右移動時,它必須返回到其初始位置。它嘗試了很多方法,但都沒有成功。它只能移動一次,下一步它是靜態的。這將是真正有用的,如果有人能解決這個在屏幕上移動圖像

<html> 
<head> 
<SCRIPT> 
    var timer = setInterval(Run,500); 
    flag = 1; 
    function Run(){ 
    img1 = document.getElementById("PacMan"); 
    var init=0; 
    var x = 0; 
    var dest_x = 800; 
    var interval = 10; 
    if(x<dest_x) 
     x = x + interval; 
     img1.style.left = x+"px"; 
    if (x+interval < dest_x) 
     img1.style.left = init+"px"; 
    if(flag ==1){ 
     img1.src = "PacMan2.png"; 
     flag=0; 

    } 
    else { 
     img1.src = "PacMan1.png"; 
     flag=1; 
    } 
    } 
</SCRIPT> 
</head> 
<body> 

<img id="PacMan" src = "PacMan1.png" onClick=clearInterval(timer) 
style="position:absolute"> </img> 
</body> 
</html> 
+2

以x +間隔您隨時添加間隔爲零;首先得到當前的分位置。 – Damian0o 2013-03-25 11:06:48

回答

4

嘗試function Run(){之前移動

var init=0; 
var x = 0; 
var dest_x = 800; 
var interval = 10; 

現在您用初始數據覆蓋結果。

-1

在我看來,你必須做出這個使用Canvas(查看MDN的例子)和JavaScript。

+1

這不是一個答案。意見進入評論區。 – Rob 2013-03-25 11:30:38

0
var timer = setInterval("Run()",500); 

你錯過了一些逗號!

+1

-1使用eval符號。不要將字符串傳遞給該函數。 – ThiefMaster 2013-04-25 16:55:42

0

嘗試讀取當前吃豆子位置

var x = img1.offsetLeft;