getBoundingClientRect

getBoundingClientRect

[1] getBoundingClientRect Method (A, ABBR, ACRONYM, ...) ( 版) <http://msdn.microsoft.com/en-us/library/ms536433(VS.85).aspx>

[2] OpearのgetBoundingClientRectとgetClientRectsがおかしいのでテストページを作った - by edvakf in hatena ( 版) <http://d.hatena.ne.jp/edvakf/20081016/1224183371>

[3] getClientRects()とgetBoundingClientRect()の違いとその動作のまとめ - DenkiYagi ( 版) <http://d.hatena.ne.jp/terurou/20071018/1192637545>

[4] getBoundingClientRect()を使って要素の絶対座標を求める - 素人がプログラミングを勉強するブログ ( 版) <http://d.hatena.ne.jp/javascripter/20080531/1212264942>

[5] WinIE7Opera9Firefox3 が対応しているみたいです。 WebKit は未対応みたいです。

[9] Bug 15897 - please implement getBoundingClientRect and getClientRects ( 版) <https://bugs.webkit.org/show_bug.cgi?id=15897>

[10] はてなブックマークのコンテンツの JavaScript を高速化する - IT戦記 ( 版) <http://d.hatena.ne.jp/amachang/20081126/1227700830>

getBoundingClientRect が遅いのは、DOMContentLoaded で実行しているからのようですね。位置が決定してないので、待ちがあるのではと予想してます。

すみません、、onload後にgetBoundingClientRectしてみたのですが、結果は変わりませんでした。。

原点

[7] html 根要素で調べてみた。奇癖モード無奇癖モード共。

html の場合

[8] html 根要素対象にすると得られるもの。 奇癖モード無奇癖モード共。

関連

[6] getBoxObjectFor というのもあります。

[11] [cssom-view] Change how {Element,Range}.getBoundingClientRect() handl… ( (zcorpan著, )) <https://github.com/w3c/csswg-drafts/commit/0e7a5cbdea19397086e9423b508fe6f41decdcec>