前の記事 ≪:PHPによる2038年問題対応
次の記事 ≫:SubVersionやRMDB、他各種プログラミング用チートシート集

JavaScript: クロスブラウザでブロック要素内のクリック座標を得る方法

2007年02月13日-はてなブックマーク

スポンサード リンク
[PR] 英単語を忘却曲線アプリを使って超効率よく記憶する方法

JavaScript: クロスブラウザでブロック要素内のクリック座標を得る方法


ちょっとやることがあって調べてみたら案外情報が見つからず、実現するのに時間がかかったのでメモしておきます。

<script type="text/javascript">
<!--
function clickhandler(event) {
        if (!event) { event = window.event; }
        var hx, hy;
        if (document.all) { // for IE
                hx = event.offsetX;
                hy = event.offsetY;
        } else {
                hx = event.layerX;
                hy = event.layerY;
        }
        alert("x:"+hx+",y:"+hy);
        // return [hx,hy];
}
//-->
</script>

<div onclick="clickhandler(event)" style="width:100px;height:100px;background-color:red"></div>

clickhandler関数がブロック要素のクリック位置を得る関数です。

prototype.js でブロック要素ないのクリック位置でなく、画面の左上からの絶対座標を得る場合は次の内容が使えます

その他、prototype.jsのイベント処理関数

関連サイト

関連エントリ

関連の記事検索:JavaScript, チュートリアル, プログラミング, prototype.js
スポンサード リンク

By.KJ : 2007年02月13日 07:04 livedoor Readerで購読 Twitterに投稿

間違いの指摘をしていただける方はメール、あるいはTwitter/FBでお願いします(クリック)