var Browser = {
    getOffset: function(element) {
        if (element.getBoundingClientRect) {
            return this.getOffsetRect(element);
        }
        
        return this.getOffsetSum(element);
    }, 

    getOffsetSum: function(element) {
        var top=0, left=0;
        
        while(element) {
            top  = top  + parseInt(element.offsetTop);
            left = left + parseInt(element.offsetLeft);
            element = element.offsetParent;
        }

        return {top: top, left: left};
    }, 

    getOffsetRect: function(element) {
        var box = element.getBoundingClientRect();

        var body = document.body;
        var docElem = document.documentElement;

        var scrollTop = window.pageYOffset || docElem.scrollTop || body.scrollTop;
        var scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft;

        var clientTop = docElem.clientTop || body.clientTop || 0;
        var clientLeft = docElem.clientLeft || body.clientLeft || 0;

        var top  = box.top +  scrollTop - clientTop;
        var left = box.left + scrollLeft - clientLeft;

        return { top: Math.round(top), left: Math.round(left) };
    },
    
    isIE: function() {
        if(-[1,]) {
            return false;
        }
        
        return true;
    }
};

