uniapp获取元素高度
时间: 2023-08-06 10:09:44 浏览: 118
要获取元素高度,可以使用uniapp中的$refs属性和uni.createSelectorQuery()方法。
1. 给要获取高度的元素添加ref属性,例如:
```
<view ref="myView">这是一个要获取高度的元素</view>
```
2. 在页面的mounted()方法中使用uni.createSelectorQuery()方法获取元素高度,例如:
```
mounted() {
uni.createSelectorQuery().in(this).select('.myView').boundingClientRect((rect) => {
console.log(rect.height)
}).exec()
}
```
其中,select()方法中的参数可以是class、id等,这里我使用了class选择器。boundingClientRect()方法用于获取元素的位置、大小等信息,其中height属性就是元素的高度。最后使用exec()方法执行操作。
相关问题
uniapp 获取元素高度
在 uniapp 中,你可以使用 wx.createSelectorQuery() 方法来获取元素的高度。首先,你需要在元素上添加唯一的 id,然后在你的 JavaScript 代码中使用以下代码来获取元素的高度:
```
wx.createSelectorQuery().select('#the-id').boundingClientRect(function (rect) {
console.log(rect.height)
}).exec()
```
这段代码会在页面渲染完成后执行,并在回调函数中输出元素的高度。
在onload或在onready获取uniapp 获取元素高度一直返回null
在 `onload` 或者 `onready` 中获取元素高度返回 `null`,可能是因为元素还没有完全渲染完成,所以需要等到页面渲染完成后再获取元素高度。可以在 `mounted` 生命周期中使用 `this.$nextTick()` 来确保页面渲染完成后再获取元素高度,示例代码如下:
```
mounted() {
this.$nextTick(() => {
const height = this.$refs.element.offsetHeight; // 获取元素高度
});
},
```
其中,`this.$refs.element` 是需要获取高度的元素的引用,需要在元素上添加 `ref="element"` 属性。
阅读全文