ブラウザで実際に表示されたHTMLで、特定の要素の【画面表示上の絶対位置】を取得したいのです。それらの要素はCSSなどで絶対位置指定されてはいません。例えば下記のようなHTML、
<html>
<body>
<table>
<tr>
<th>test</th>
</tr>
<tr>
<td>
<img id=”target” src=”***”>
</td>
</tr>
</table>
</body>
</html>
この時の ID=”target” の絶対位置(top/left)を取得したいのです。clientTop/Leftなどを試してみたのですが0が返ってきました。IE6.xx/Firefoxで可能かどうか教えて下さい。
http://www.microsoft.com/japan/developer/library/jpisdk/dhtml/re...
MSDN Online Japan : File Not Found
オブジェクトの持つプロパティは下記のようなスクリプトで全て確認できます。
var o = document.getElementById(”target”);
for(i in o){
document.write(i + ”=” + o[i] + ”<br>”);
}
このスクリプトでそれらしいプロパティは見当たりませんでしたが、offsetLeft、offsetTopが親要素からの相対位置を示してくれるようです。
そこで、これを利用してbody要素まで上って確認すれば絶対位置を取得可能だと思います。
http://www.microsoft.com/japan/developer/library/jpisdk/dhtml/re...
MSDN Online Japan : File Not Found
参考URLで実装されているjavascriptが参考になるのではないでしょうか。
このソースコードではIEとNN系で別の対応をしていますね。
コメント(0件)