The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何取得任何 HTML 標籤右上角的位置

1. 首先,必須先抓到該 HTML 標籤在畫面中「左上角」的位置。

抓到 HTML 物件的絕對位址方法可以用以下 JavaScript function 取得:

function findPosX(obj)
{
    var curLeft = 0;
    if (obj.offsetParent) {
        do {
            curLeft += obj.offsetLeft;
        } while (obj = obj.offsetParent);
    }
    else if (obj.x) {
        curLeft += obj.x;
    }
    return curLeft;
}

function findPosY(obj)
{
    var curTop = 0;
    if (obj.offsetParent) {
        do {
            curTop += obj.offsetTop;
        } while (obj = obj.offsetParent);
    }
    else if (obj.y) {
        curTop += obj.y;
    }
    return curTop;
}

2. 再用 offsetWidth 屬性取得該元素的寬度即可。以下是 HTML 元素中各種不同關於寬高的示意圖: