uniapp获取元素高度
时间: 2023-09-03 17:10:38 浏览: 103
可以使用uni.createSelectorQuery()方法来获取元素的高度,具体步骤如下:
1. 在页面的onLoad或onReady生命周期函数中获取元素节点:
```
onLoad() {
uni.createSelectorQuery().select('.element').boundingClientRect(data => {
console.log(data.height) // 打印元素高度
}).exec()
}
```
2. 在页面中对应的元素上添加class名为“element”:
```
<view class="element">这是一个元素</view>
```
这样就可以获取到该元素的高度了。需要注意的是,使用uni.createSelectorQuery()方法获取元素高度时,必须等到元素渲染完成后才能获取到正确的高度,因此建议在onReady生命周期函数中获取元素高度。
相关问题
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"` 属性。
阅读全文