js元素尺寸和位置,包含clientWidth、offsetWidth、scrollWidth等
一.clientWidth和clientHeight
1.clientWidth:內容+左右內間距
即:clientWidth = width+左右padding
2.clientHeight:內容+上下內間距
即: clientHeigh = height + 上下padding
二.offsetWidth和offsetHeight
1.offsetWidth:內容+內間距+左右邊框
即:offsetWidth = width + 左右padding + 左右boder
2.offsetHeight:內容+內間距+上下邊框
即:offsetHeith = height + 上下padding + 上下boder
三.scrollWidth、scrollHeight、scrollTop和 scrollLeft
1.scrollWidth:可視區域寬度+被隱藏區域寬度
2.scrollHeight:可視區域高度+被隱藏區域高度
3.scrollTop :內容部分頂部到可視區域頂部的距離
4.scrollLeft:內容層左端 到 可視區域左端的距離
四.舉例程式碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
*
{
margin: 0;
padding: 0;
}
.box
{
width: 200px;
height: 200px;
margin: 20px;
padding: 50px;
border: 10px solid palegreen;
overflow-x: hidden;
overflow-y: scroll;
}
.child
{
width: 200px;
height: 500px;
}
</style>
</head>
<body>
<div class="box">
<div class="child">
內容區域
</div>
</div>
<script>
var box = document.querySelector(".box");
//offsetWidth:邊框+內間距+內容
console.log(box.offsetWidth);
console.log(box.offsetHeight);
//clientWidth:內間距+內容
console.log(box.clientWidth);
console.log(box.clientHeight);
//style.width:行內樣式內容區域的寬
console.log(box.style.width);
console.log(box.style.height);
//scrollHeight:可視區域高度+被隱藏區域高度
console.log(box.scrollWidth);
console.log(box.scrollHeight);
//當前元素相對定位的父元素的偏移距離
console.log(box.offsetTop);
console.log(box.offsetLeft);
//滑動距
console.log(box.scrollLeft);
console.log(box.scrollTop);
console.log(box.scrollHeight - box.clientHeight);
box.onscroll = function () {
console.log(this.scrollTop);
var scTop = this.scrollTop;
if (this.scrollHeight - box.clientHeight - scTop <= 5) {
console.log("觸底");
}
}
</script>
</body>
</html>
五.執行結果
相關文章
- 元素的尺寸 offsetWidth和clientWidth的區別client
- dom的寬高 clientWidth offsetWidth scrollWidthclient
- JavaScript屬性中的offsetLeft、offsetWidth、clientWidth、scrollLeft、scrollWidth、innerWidJavaScriptclient
- 蒙了嗎?offsetLeft、offsetWidth、scrollTop、scrollWidth、event.pageX
- 整理獲取 viewport 和 element 尺寸和位置方法View
- JavaScript DOM位置尺寸APIJavaScriptAPI
- 用 js 獲取頁面元素的位置圖文總結JS
- JS能力測評經典題--查詢陣列元素位置JS陣列
- JavaScript scrollWidthJavaScript
- JavaScript clientWidthJavaScriptclient
- JavaScript 拖動調整元素尺寸JavaScript
- JavaScript offsetWidthJavaScript
- 最全iPhone啟動圖尺寸(包含 XS Max & XR)iPhone
- JavaScript拖動調整元素的尺寸JavaScript
- dataTable.js使用總結(包含序號生成,懸浮框使用等)JS
- js練習(一)找出元素item在給定陣列arr中的位置JS陣列
- jQuery動態設定div元素的尺寸jQuery
- 原生js實現Ajax請求,包含get和postJS
- 瀏覽器/元素尺寸相關的屬性瀏覽器
- JavaScript 陣列 指定索引位置插入元素JavaScript陣列索引
- Java stream判斷列表是否包含某幾個元素/重複元素Java
- transform改變定位元素的包含塊ORM
- 檢查vector中是否包含給定元素
- jquery取值和賦值(包含部分是原生js的取值和賦值)jQuery賦值JS
- CSS max-width/min-width設定元素尺寸CSS
- js小功能之-新增元素-清楚元素JS
- JavaScript陣列指定位置插入新元素JavaScript陣列
- dom元素操作獲取等
- QT QLable屬性設定(尺寸,邊框等)QT
- 2 JS的書寫位置JS
- js中有哪些書寫位置JS
- CSS3動畫方式改變div元素的尺寸CSSS3動畫
- JavaScript與CSS3動畫方式改變元素尺寸JavaScriptCSSS3動畫
- jQuery將li元素插入列表中任意位置jQuery
- JavaScript獲取元素在陣列中的位置JavaScript陣列
- 獲取元素大小、偏移量及滑鼠位置
- HTML元素拖動JSHTMLJS
- JS 獲取文件元素JS