JavaScript獲取元素在文件中座標

螞蟻小編發表於2018-06-02

下面通過程式碼例項介紹一下當前元素在頁面中的座標。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
* {
  margin:0px;
  padding:0px;
}
#box {
  margin:50px;
  width:300px;
  height:200px;
  background:#ccc;
  padding:50px;
  position:relative;
}
#antzone {
  width:200px;
  height:100px;
  background:green;
}
</style>
<script>
function getElCoordinate(dom) {
  var t = dom.offsetTop;
  var l = dom.offsetLeft;
  dom = dom.offsetParent;
  while (dom) {
    t += dom.offsetTop;
    l += dom.offsetLeft;
    dom = dom.offsetParent;
  };
  return { top: t, left: l };
};
window.onload = function () {
  var obox = document.getElementById("box");
  var oantzone = document.getElementById("antzone");
  var oshow = document.getElementById("show");
  var str = "";
 
  var positionObj=getElCoordinate(oantzone);
  str = str + "橫座標是:" + positionObj.left + "<br/>";
  str = str + "縱座標是:" + positionObj.top;
  oshow.innerHTML = str;
}
</script>
</head>
<body>
<div id="box">
  <div id="antzone"></div>
</div>
<div id="show"></div>
</body>
</html>

上面的程式碼實現了我們的要求,程式碼比較簡單。

相關閱讀:

(1).offsetTop參閱JavaScript offsetTop一章節。

(2).offsetParent參閱JavaScript offsetParent一章節。

(3).while語句參閱JavaScript while語句一章節。

(4).innerHTML參閱JavaScript innerHTML一章節。

相關文章