隨時隨地取得物件座標改良版
Tue, 20 Jun 2006 16:50:57 +0800算兩次也很麻煩,乾脆一次解決。
function Point (_x, _y) { this.x = _x; this.y = _y; } function realPosition(_obj) { var currPos = new Point(_obj.offsetLeft,_obj.offsetTop); var workPos = new Point(0,0); if (_obj.offsetParent.tagName.toUpperCase() != "BODY") { workPos = realPosition(_obj.offsetParent); currPos.x += workPos.x; currPos.y += workPos.y; } return currPos; }
這樣就可以一次解決,不必做兩次遞迴。
[2007/10/5]
稍微調整一下,讓程式看起來比較美觀。:D