Check

offsetTop、offsetLeftを多少ちゃんととる

| | コメント(0) | トラックバック(0)

http://d.hatena.ne.jp/susie-t/20061004/1159942798

offsetTop、offsetLeftは扱いが結構面倒。
特に親要素のpositionの値によって0の位置が変わるのが嫌。
なので、とりあえずそれだけでも何とかするコードを書いた。

要jQuery

var pos = ( function ( base_elem ) {
var parent = base_elem.parentNode;
var e_top = 0;
var e_left = 0;
return ( function ( elem ) {
var t = elem.tagName;
if ( !t || t.toLowerCase() == 'body' ) return;
var pos = $.curCSS( elem, 'position' ) || 'static';
var par = elem.parentNode;
if ( pos != 'static' ) {
e_top += elem.offsetTop;
e_left += elem.offsetLeft;
}
arguments.callee( par );
return [ e_top, e_left ];
} )();
} )( elem );

トラックバック(0)

このブログ記事を参照しているブログ一覧: offsetTop、offsetLeftを多少ちゃんととる

このブログ記事に対するトラックバックURL: http://0-9.sakura.ne.jp/mt/mt-tb.cgi/176

コメントする