zoukankan      html  css  js  c++  java
  • uni-app 可滚动视图区域

    <template>
        <view>
            <scroll-view :scroll-top="scrollTop" scroll-y="true" @scrolltoupper="upper" @scrolltolower="lower" @scroll="scroll" class="scroll-y" scroll-with-animation="true">
                <view class="scroll-y" style="background-color: red;">A</view>
                <view class="scroll-y" style="background-color: green;">B</view>
                <view class="scroll-y" style="background-color: blue;">C</view>
            </scroll-view>
            <view @click="goTop">点我回到顶部</view>
            <scroll-view @scroll="scroll1" :scroll-left="scrollLeft" class="scroll-x x" scroll-x="true" >
                <view class="scroll-x" style="background-color: red;">A</view>
                <view class="scroll-x" style="background-color: green;">B</view>
                <view class="scroll-x" style="background-color: blue;">C</view>
            </scroll-view>
            <view @click="goLeft">点我回到最左侧</view>
        </view>
    </template>
    
    <script>
        export default {
            data() {
                return {
                    //当前距离顶部位置
                    scrollTop:0,
                    scrollLeft:0,
                    old: {
                        //记录距离顶部位置
                        scrollTop: 0,
                        scrollLeft:0
                    }
                }
            },
            onLoad(e) {
            },
            methods: {
                upper: function(e) {
                    console.log('我到顶部了')
                },
                lower: function(e) {
                    console.log('我到底部了')
                },
                scroll: function(e) {
                        // console.log(e)
                        this.old.scrollTop = e.detail.scrollTop
                },
                goTop: function(e) {
                        //给当前距离顶部位置赋值
                        this.scrollTop = this.old.scrollTop
                        //异步更新距离顶部位置
                        this.$nextTick(function() {
                                this.scrollTop = 0
                        });
                },
                scroll1(e){
                    this.old.scrollLeft=e.detail.scrollLeft
                },
                goLeft(e){
                    this.scrollLeft = this.old.scrollLeft
                    //异步更新距离顶部位置
                    this.$nextTick(function() {
                            this.scrollLeft = 0
                    });
                }
            }
        }
    </script>
    
    <style>
        .scroll-y{
             100%;
            height: 300rpx;
            text-align: center;
            line-height: 300rpx;
        }
        .scroll-x{
             100%;
            height: 300rpx;
            text-align: center;
            line-height: 300rpx;
            display: inline-block;
        }
        .x{
            flex-wrap: nowrap;
            white-space: nowrap;
        }
    </style>







  • 相关阅读:
    PE 合并节
    VirtualAddress与VirtualSize与SizeOfRawData与PointerToRawData的关系
    .net core publish 找不到视图
    c++ rc 文件内包含中文字符导致在unicod环境下编译乱码
    .net 5.0 ref文件夹的作用
    .net 5.0项目升级工具
    HttpWebRequest DNS缓存清理
    .net 5.0 发布命令总结
    关于dll not found 排查解决
    关于win7 无法识别sha256签名导致驱动无法安装的问题
  • 原文地址:https://www.cnblogs.com/lxz-blogs/p/12582111.html
Copyright © 2011-2022 走看看