2011-09-30 83 views

回答

16

getBoundingClientRect()是您的朋友,並且在所有瀏覽器的最新版本(Firefox 3,Safari 4,Chrome,Opera 9.5,IE 5)中都受支持。它會給你不過座標相對於視而非頁面,所以你需要在文檔上的滾動量增加:

function getPageTopLeft(el) { 
    var rect = el.getBoundingClientRect(); 
    var docEl = document.documentElement; 
    return { 
     left: rect.left + (window.pageXOffset || docEl.scrollLeft || 0), 
     top: rect.top + (window.pageYOffset || docEl.scrollTop || 0) 
    }; 
} 
+1

+1「是你的朋友」 – awm

+0

真棒,謝謝:)。 +1是純粹可愛的javascript。 – Ejaz

相關問題