src/modules/inactive/rangy-position.js
function(el) {
                    var x = 0, y = 0, offsetEl = el, width = el.offsetWidth, height = el.offsetHeight;
                    while (offsetEl) {
                        x += offsetEl.offsetLeft;
                        y += offsetEl.offsetTop;
                        offsetEl = offsetEl.offsetParent;
                    }

                    return adjustClientRect(new Rect(y, x + width, y + height, x), dom.getDocument(el));
                }
function(el) {
                    var x = 0, y = 0, offsetEl = el, width = el.offsetWidth, height = el.offsetHeight;
                    while (offsetEl) {
                        x += offsetEl.offsetLeft;
                        y += offsetEl.offsetTop;
                        offsetEl = offsetEl.offsetParent;
                    }

                    return adjustClientRect(new Rect(y, x + width, y + height, x), dom.getDocument(el));
                }
function ( el ) { var x = 0 , y = 0 , offsetEl = el , width = el . offsetWidth , height = el . offsetHeight ; while ( offsetEl ) { x += offsetEl . offsetLeft ; y += offsetEl . offsetTop ; offsetEl = offsetEl . offsetParent ; } return adjustClientRect ( new Rect ( y , x + width , y + height , x ) , dom . getDocument ( el ) ) ; }
This implementation is very naive. There are many browser quirks that make it extremely difficult to get accurate element coordinates in all situations
This implementation is very naive . There are many browser quirks that make it extremely difficult to get accurate element coordinates in all situations