javascriptで画像を動かす

javascript

!DOCTYPE htmlとするとjavascriptが動作しない。この記述HTML5では、”px”を付けないと正常にならないとのこと。
setTimeout関数はこう使うのかと目からうろこだな。リカーシブコールになってるけど問題ないのか・・・。ちょっと分からないな。

javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>画像移動</title>
<script >
x1 = 10;
y1 = 10;
x2 = 80*2;
y2 = 100*2;
step = 1;
dx = x2 - x1;
dy = y2 - y1;
if (dx > dy) a = dy / dx; else a = dx / dy;
x = x1;
y = y1;
function moveImg()
{
    flag = true;
    if (dx > dy)
    {
        x = x + step;
        y = a * x;
        if (x > x2) flag = false;
    }else{
        y = y + step;
        x = a * y;
        if (y > y2) flag = false;
    }
    //--注) <!DOCTYPE html>の宣言の場合 "px"をくっ付けないと動作しないように見える。
    document.myIMG.style.left = x + "px";
    document.myIMG.style.top  = y + "px";
    if (flag) setTimeout("moveImg()",50);
}
</script>
</head>
<body topmargin="0" leftmargin="0" backgroung-color:"black">
<a href="javaScript:moveImg()">移動</a>
 
<img src="moon.png" name="myIMG" style="position:absolute;top:20px;left:10px;"><br>
<img src="moontrans.png" style="position:absolute;top:100px;left:80px;"><br>
<br><br><br><br>
</body>
</html>
No tags for this post.
タイトルとURLをコピーしました