zoukankan      html  css  js  c++  java
  • 小程序:如何让scroll-view包含内容完整滚动

     

    1.关于scroll-view

    scroll-view是小程序用来控制可滚动视图区域的组件。

    通过设置scroll-x ="true" 或 scroll-y="true" 来分别控制横向滚动或纵向滚动;这里需要注意的一点:

    使用竖向滚动时,需要给<scroll-view/>一个固定高度,通过 WXSS 设置 height

    2.使用scroll-view来实现一个介绍页长图的完整滚动显示

    本以为是一个简单的需求,没想到也会采坑;

    第一版实现思路及代码如下:

    通过wx.getSystemInfoSync()获取设备高度,然后通过内联样式去给scroll-view组件height赋值

    wxml

    <scroll-view class="help-info" scroll-y="true" style="height:{{scrollHeight}}px">
        <image lazy-load="true" src="../../images/userGuide.jpg" mode="widthFix"></image>
    </scroll-view>
    

    wxss

    .help-info {
        position: absolute;
        top: 0;
        bottom: 0;
         100%;
    }
    
    .help-info image {
        display: block;
         100%;
        height: 100%;
    }  

    js

    Page({
        data: {
            scrollHeight: ''
        },
        onLoad: function() {
            let self = this;
            wx.getSystemInfo({
                success: function(res) {
                    self.setData({
                        scrollHeight: res.windowHeight
                    })
                }
            });
        }
    })
    

     

    测试结果:

    图片在ios上不能显示完整,偶尔也会先不能滚动的情况

    认真查找很久原因,发现是因为没有给scroll-view设置  overflow: auto;

    wxss更改如下:

    .help-info {
        position: absolute;
        top: 0;
        bottom: 0;
         100%;
        overflow: auto;
    }
    
    .help-info image {
        display: block;
         100%;
        height: 100%;
    }
    

      

    测试结果:

    正常显示

    总结:在使用scroll-view实现竖直滚动的时候,要设置下overflow: auto;这样才能正常显示

  • 相关阅读:
    堆排序算法(C#实现)
    在 .NET 2.0 中享受 .NET 3.0的特性
    火花:使用文件管理功能管理我的连接
    我们可以做的更好
    有价值的文章
    网上掏宝
    WPF绑定技术一步步学
    结构类型需要重载GetHashCode和Equals
    关于扩展Visual Studio 2005的相关资料
    插件模型应该考虑的问题
  • 原文地址:https://www.cnblogs.com/kevinCoder/p/9074271.html
Copyright © 2011-2022 走看看