美文网首页uniapp
uniapp 获取页面剩余高度

uniapp 获取页面剩余高度

作者: 逗婆苍穹 | 来源:发表于2021-06-22 10:54 被阅读0次
export default {
    getSystemInfo(key) {
        return new Promise(function(resolve, reject) {
            uni.getSystemInfo({
                success(res) {
                    key ? resolve(res[key]) : resolve(res)
                }
            })
        })
    },
    getDomHeight(_this, selector) {
        return new Promise(function(resolve, reject) {
            const query = uni.createSelectorQuery().in(_this);
            query.select(selector).boundingClientRect(data => {
                resolve(data.height)
            }).exec();
        })
    },
    async getScrollViewHeight(_this, arr) {
        let height = 0
        let windowHeight = await this.getSystemInfo('windowHeight')
        for (let i = 0; i < arr.length; i++) {
            let h = await this.getDomHeight(_this, arr[i])
            height += h
        }
        return windowHeight - height
    }
}


// 在页面中使用 , this是当前页面中的this, arr 是包含dom类名的数组
async onReady() {
       //  顶部搜索栏 和 轮播图 的类名
    let arr = ['.search-block','.swiper-block']
    this.height = await scrollView.getScrollViewHeight(this, arr)
},
  • height 最好给个默认值 height:300,不为0即可
  • scroll-view 标签上 动态绑定 height :style=" 'height:'+height+'px;' "
<scroll-view :style="'height:'+ height + 'px;'" scroll-y="true" @scrolltolower="scrollToLower">
     <view v-for="(item,index) in list" :key="index" ></view>               
</scroll-view>

相关文章

网友评论

    本文标题:uniapp 获取页面剩余高度

    本文链接:https://www.haomeiwen.com/subject/lovpyltx.html