ページ内の任意の位置をクリックすれば、その位置情報を取得する(単位はピクセル)
id名はid属性が設定されていないと表示されない。表の[取得値]列にはid属性が付けられているのでクリックしてみてください。
(対応)
★ ・・・IEも、IE以外のMozilla系にも両対応
E ・・・IEのみ対応
M ・・・IE以外のMozilla系のみ対応
プロパティの種類 |
説明 |
取得値 |
対応 |
offsetX/offsetY |
親要素の左上隅を基点にしたxy座標 |
|
E |
x/y |
要素内でのイベント発生時のxy座標 |
|
E |
layerX/layerY |
要素内でのイベント発生時のxy座標 |
|
M |
pageX/pageY |
ドキュメント座標での xy座標 |
|
M |
clientX/clientY |
プラウザの左上隅を基点にしたxy座標 |
|
★ |
screenX/screenY |
画面の左上隅を基点にしたxy座標 |
|
★ |
button |
押されたボタンの種類(1:左ボタン,2:右ボタン) |
|
★ |
srcElement.tagName |
イベントが発生した要素のタグ名 |
|
E |
srcElement.id |
イベントが発生した要素のid名 |
|
E |
target.tagName |
イベントが発生した要素のタグ名 |
|
M |
target.id |
イベントが発生した要素のid名 |
|
M |
type |
発生したイベントの名前 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(何故にか?、プラウザのスクロールバーが効かなくなる(私の環境だけか?)不思議です、
スクリプト"document.onmousedown = EventTest"が、スクロールバーのデフォルトのイベント動作を奪ってしまったようです。
[スペース]キー、[Shift + スペース]キーでスクロールできるようです)
Sample Source......................................................................>>>
<script language="JavaScript"><!--
function EventTest(evt){
evt = (evt) ? evt :event; //IEのイベントモデルとそれ以外のイベントモデルの両対応にする
var e_ofx = evt.offsetX;
var e_ofy = evt.offsetY;
document.getElementById("offxy").innerHTML = "<span>"
+ e_ofx + "/" + e_ofy + "</span>";
var e_x = evt.x;
var e_y = evt.y;
document.getElementById("xy").innerHTML = "<span>"
+ e_x + "/" + e_y + "</span>";
var e_lax = evt.layerX;
var e_lay = evt.layerY;
document.getElementById("laxy").innerHTML = "<span>"
+ e_lax + "/" + e_lay + "</span>";
var e_pgx = evt.pageX;
var e_pgy = evt.pageY;
document.getElementById("pgxy").innerHTML = "<span>"
+ e_pgx + "/" + e_pgy + "</span>";
var e_clx = evt.clientX;
var e_cly = evt.clientY;
document.getElementById("clxy").innerHTML = "<span>"
+ e_clx + "/" + e_cly + "</span>";
var e_scx = evt.screenX;
var e_scy = evt.screenY;
document.getElementById("scxy").innerHTML = "<span>"
+ e_scx + "/" + e_scy + "</span>";
var e_bt = evt.button;
document.getElementById("bt").innerHTML = "<span>"
+ e_bt + "</span>";
var e_tag = evt.srcElement.tagName;
document.getElementById("etag").innerHTML = "<span>"
+ e_tag + "</span>";
var e_id = evt.srcElement.id;
document.getElementById("eid").innerHTML = "<span>"
+ e_id + "</span>";
var e_ttag = evt.target.tagName;
document.getElementById("ttag").innerHTML = "<span>"
+ e_ttag + "</span>";
var e_tid = evt.target.id;
document.getElementById("tid").innerHTML = "<span>"
+ e_tid + "</span>";
var e_tp = evt.type;
document.getElementById("tp").innerHTML = "<span>"
+ e_tp + "</span>";
}
document.onmousedown = EventTest; //任意の位置のクリック処理
//--></script>
</head>
<body>
<tr><td>プロパティの種類</td><td>説明</td><td>取得値</td><td>対応</td>
</tr>
<tr><td>offsetX/offsetY</td><td>親要素の左上隅を基点にしたxy座標</td><td
id="offxy"></td><td></td>
</tr>
<tr><td>x/y</td><td>要素内でのイベント発生時のxy座標</td><td
id="xy"></td><td></td>
</tr>