js 獲取元素位置

絕對位置

function getElementLeft(element){

    var actualLeft = element.offsetLeft;

    var current = element.offsetParent;

    while (current !== null){

      actualLeft += current.offsetLeft;

      current = current.offsetParent;

    }

    return actualLeft;

  }

  function getElementTop(element){

    var actualTop = element.offsetTop;

    var current = element.offsetParent;

    while (current !== null){

      actualTop += current.offsetTop;

      current = current.offsetParent;

    }

    return actualTop;

  }

 

 相對位置

function getElementViewLeft(element){

    var actualLeft = element.offsetLeft;

    var current = element.offsetParent;

    while (current !== null){

      actualLeft += current.offsetLeft;

      current = current.offsetParent;

    }

    if (document.compatMode == "BackCompat"){

      var elementScrollLeft=document.body.scrollLeft;

    } else {

      var elementScrollLeft=document.documentElement.scrollLeft;

    }

    return actualLeft-elementScrollLeft;

  }

  function getElementViewTop(element){

    var actualTop = element.offsetTop;

    var current = element.offsetParent;

    while (current !== null){

      actualTop += current. offsetTop;

      current = current.offsetParent;

    }

     if (document.compatMode == "BackCompat"){

      var elementScrollTop=document.body.scrollTop;

    } else {

      var elementScrollTop=document.documentElement.scrollTop;

    }

    return actualTop-elementScrollTop;

  }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章