offsetheight取值不准确
时间: 2023-05-26 19:06:44 浏览: 84
可能是因为元素在隐藏状态下获取不到实际高度,或者是因为元素的高度被样式或脚本修改了而没有同步更新offsetheight的值。在这种情况下,可以尝试使用其他属性来获取元素的实际高度,例如clientHeight、scrollHeight等。如果仍然无法解决问题,可能需要检查代码逻辑是否正确,以及元素的父级元素是否设置了正确的高度和布局。
相关问题
offsetheight
offsetHeight是一个元素在垂直方向上占用的空间大小,以像素计。它包括元素的高度(可见的),水平滚动条的高度,上边框高度和下边框高度。对于内联元素,offsetHeight始终为0。offsetHeight是一个只读属性,单位为像素。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [一文看懂js中元素偏移量(offsetLeft,offsetTop,offsetWidth,offsetHeight)](https://blog.csdn.net/sinat_41212418/article/details/121089955)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [clientHeight和offsetHeight](https://blog.csdn.net/Amnesiac666/article/details/122083846)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
获取元素高度,offsetHeight不起效果
如果 `offsetHeight` 不起作用,可以尝试以下方法:
1. 使用 `clientHeight` 属性获取元素的高度,它返回的是元素在不包括边框的情况下的高度。
2. 如果元素的高度是通过 CSS 指定的,则可以使用 `getComputedStyle()` 方法获取元素的样式,然后从样式中获取元素的高度。
3. 如果以上两种方法都不起作用,可以使用 `scrollHeight` 属性获取元素的高度,它返回的是元素的内容高度,包括溢出部分的高度。
示例代码:
```javascript
// 获取元素高度
var elem = document.getElementById('myElement');
var height = elem.clientHeight || parseInt(window.getComputedStyle(elem).height) || elem.scrollHeight;
console.log(height);
```