2011-04-10 26 views
0

我有一個div對象,例如(簡單圖像),我需要我的圖片左右移動,沒有任何框架和邊框。我的圖片將與結尾(我的頁面右側)發生碰撞,並向後移動到左側,然後與右側一起移動。這將只在JavaScript上。在沒有jQuery的情況下需要關於JavaScript的動畫幫助

編輯:

<html> 
<head> 
<script> 
function dvig() { 
    var xx = 50; 
    var corner_left=200 +'px'; 
    var corner_right=100 +'px'; 
    var move; var move2; 
    var dv=document.getElementById("adam"); 
    if(dv.style.left<=corner_right) { 
     move=1; 
     move2=1; 
    } 
    if(dv.style.left>=corner_left) { 
     move2=0; 
     move=0; 
    } 
    if(move=1) { 
     dv.style.left=parseInt(document.getElementById("adam").style.left)+xx; 
    } 
    if (move2=0) { 
     move=0; 
     dv.style.left=parseInt(document.getElementById("adam").style.left)-xx; 
    } 
} 
function chustro() { 
    setInterval("dvig()", 100); 
} 
</script> 
</head> 
<body onload="chustro()"> 
    <img id="adam" style="position: absolute; top: 100px; left: 100px; width: 40px; height: 40px; background-color: red"> 
</body> 
</html> 
+0

聽起來像是一門功課給我。你能否給出一個很好的理由不使用現有的圖書館? – 2011-04-10 06:43:22

+0

Dat Chu先生我只需要JavaScript,我正在學習JavaScript,當我做這個任務時,我有一個錯誤,我會發布我寫的代碼,但我有一個頁面邊界的問題 – Adam 2011-04-10 06:46:26

+0

Adam 2011-04-10 06:47:58

回答

0

你將不得不安裝運行每隔X毫秒的迭代過程。每次運行時,您都必須稍微更新div的位置,並檢查它是否遇到側向和反向。

function doWork{ 
    // move current direction a little 

    // check if past the left edge and change directions 

    // check if past the right edge and change direction 
} 

setInterval(doWork, 10); 

更新:

基於您的代碼,看看這個例子: http://jsfiddle.net/HT9A4/

+0

賈斯汀先生你可以看看我的JavaScript代碼並寫出什麼問題? – Adam 2011-04-10 06:54:15

+0

@Adam - 查看我的更新 – Justin808 2011-04-10 07:09:06