0

ボードに当たったときにボールをバウンドさせたい。したがって、ボールがボードに当たったときにボードが跳ね返るように、ボードのピクセルを取得する必要があります。私はこの方法を試しましたが、うまくいきませんでした。これが私のコードですJavascriptコード

var xboard = document.getElementById(board)
var movx = parseInt(xboard.style.left)

画像コード

<img id="board" style="z-index: 0; left: 300;position: absolute; top: 600px" align=baseline border=0 hspace=0 src="design/board.gif">

でピクセルを取得しようとしたとき

alert(movx)

警告ボックスに「未定義」と表示されました。誰か助けてもらえますか?

4

3 に答える 3

1

pxで位置を宣言する必要があると思います:

left: 300px

動作するようです:http://jsfiddle.net/p2gRq/

于 2012-04-16T10:36:42.413 に答える
0

の代わりに実際の要素を使用しようとしていますid

これを変える:

var xboard = document.getElementById(board);

に:

var xboard = document.getElementById('board');

boardまた、存在する前にアクセスしようとしていないことを確認してください。

于 2012-04-16T11:09:49.270 に答える
0

このメソッドは、渡されたコントロールの座標を提供します

<img id="board" style="z-index: 0; left: 300;position: absolute; top: 600px" align=baseline border=0 hspace=0 src="design/board.gif">

function findPos(obj){
var curleft = 0;
var curtop = 0;

if (obj.offsetParent) {
    do {
        curleft += obj.offsetLeft;
        curtop += obj.offsetTop;
       } while (obj = obj.offsetParent);

    return {X:curleft,Y:curtop};
}
}

findPos(document.getElementById('board'));
alert(curleft);
alert(curtop);

詳細はこちら

于 2012-04-16T10:56:59.753 に答える