小程序scroll-view高度自适应
时间: 2023-08-07 09:06:58 浏览: 105
UIScrollView自适应高度或宽度
可以通过小程序的 wx.createSelectorQuery 接口来获取 scroll-view 内部的实际高度,然后动态设置 scroll-view 的高度。
具体实现步骤如下:
1. 在 scroll-view 的最外层元素上添加一个 id,例如:id="scroll-view-wrap"。
2. 在页面的 onLoad 生命周期中,获取 scroll-view 的实际高度,并设置给 scroll-view。
```javascript
onLoad: function () {
const query = wx.createSelectorQuery()
query.select('#scroll-view-wrap').boundingClientRect()
query.exec(function (res) {
const scrollViewHeight = res[0].height
wx.getSystemInfo({
success: function (res) {
const windowHeight = res.windowHeight
const scrollHeight = scrollViewHeight * (750 / res.windowWidth) // 将 px 单位转换为 rpx
if (scrollHeight > windowHeight) {
// 如果实际高度大于屏幕高度,则设置 scroll-view 的高度为屏幕高度
this.setData({
scrollHeight: windowHeight
})
} else {
// 如果实际高度小于等于屏幕高度,则设置 scroll-view 的高度为实际高度
this.setData({
scrollHeight: scrollHeight
})
}
}.bind(this)
})
}.bind(this))
}
```
3. 在 wxml 中动态设置 scroll-view 的高度。
```html
<scroll-view style="height:{{scrollHeight}}rpx;"></scroll-view>
```
这样就可以实现 scroll-view 高度自适应了。
阅读全文