- PR -

マウスイベントの座標がうまくとれない。

1
投稿者投稿内容
武史
ベテラン
会議室デビュー日: 2007/09/21
投稿数: 71
投稿日時: 2008-06-17 18:00
お世話になっています。

現在、下のような JavaScript を使っていたのですが、
どうにも、うまく座標がとれず困っております。

下の html で、画面に青い四角が出ますので、
その一番左端をクリックしてみました。

その時に、X 座標として、0 が返ってくることを期待
していたのですが、どんなに左端をクリックしても、
その X 座標に「2」以上の値が、返ってきてしまいます。

コード:
<html>
<script type="text/javascript" language="javascript">
function MouseDown(){
	alert(event.clientX);
}
</script>
<body style="margin:0; padding:0">
a
<div id="test_out" style="width:100; height=100; background-color:#3333FF;" onClick="MouseDown();"></div>
b
</body>
</html>




なお、実行は、IE7 で行っております。

手掛かりなど、ご存じの方がいらっしゃいましたら、教えていただければと思います。

よろしくお願いいたします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2008-06-17 18:05
引用:

武史さんの書き込み (2008-06-17 18:00) より:

なお、実行は、IE7 で行っております。


IE は伝統的に body (html) 要素に border がデフォルトで入っています。 ですので、body (html) 要素に含まれる要素の margin を 0 にしても端は絶対座標 0 にはならないと思います。

border を消してしまえば良いと思いますが、試していないのでちょっと自信がなかったりします。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
武史
ベテラン
会議室デビュー日: 2007/09/21
投稿数: 71
投稿日時: 2008-06-17 18:58
じゃんぬねっと様

body を、

 <body style="margin:0; padding:0; border:none">

というように、してやれば、うまく行きました。

どうも、ありがとうございます。
1

スキルアップ/キャリアアップ(JOB@IT)