js 盒子模型及方法


clientWidth  =内容+padding
offsetWidth  =内容+padding+border

//获得左 上偏移量 利用offsetParent

function getElementLeft(ele){
    var actualLeft=ele.offsetLeft;
    var current=ele.offsetParent;
    while(current!==null){
        actualLeft+=current.offsetLeft;    
        current=current.offsetParent;
    }
    return actualLeft;
}

function getElementTop(ele){
    var actualTop=ele.offsetTop;
    var current=ele.offsetParent;
    while(current!==null){
        actualTop+=current.offsetTop;
        current=current.offsetParent;
    }
    return actualTop;
}

//可视区宽度
function getViewport(){
    if(document.compatMode=="BackCompat"){//标准模式关闭 BackCompat混杂模式
        return {
            width:document.body.clientWidth;
            height:document.body.clientHeight;
        }
    
    }else{//标准模式开启  CSS1Compat
    
        return {
            width:document.documentElement.clientWidth;
            height:document.documentElement.clientHeight;
        }
    }
}

posted on 2013-03-04 17:01  小猕儿  阅读(448)  评论(0编辑  收藏  举报

导航