zoukankan      html  css  js  c++  java
  • 探秘小程序(8):scroll-view组件

    按照官方文档的例子已经多scroll-view进行了说明,但是案例中没有样式 到时会出现一些问题,比如说,自己写的scroll-x并不能横向滚动,今天就来说一下这个问题:

    DEMO如下:

    html:

    <view class='section'>
      <view class='section_title'>verticle scroll</view>
      <scroll-view scroll-y style='height:200px;' bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" scroll-into-view="{{toView}}" scroll-top="{{scrollTop}}">
        <view id='green' class='scroll-view-item bc_green'></view>
        <view id='red' class='scroll-view-item bc_red'></view>
        <view id='yellow' class='scroll-view-item bc_yellow'></view>
        <view id='blue' class='scroll-view-item bc_blue'></view>
      </scroll-view>
    
      <view class='btn-area'>
        <button size='mini' bindtap="tap">click me to scroll into view</button>
        <button size="mini" bindtap='tapMove'>click me to scroll</button>
      </view>
    </view>
    <view class="section section_gap">
      <view class="section__title">horizontal scroll</view>
      <scroll-view scroll-x='true'  class="scroll-view_H" style=" 100%;">
        <view id="green" class="scroll-view-item_H bc_green"></view>
        <view id="red"  class="scroll-view-item_H bc_red"></view>
        <view id="yellow" class="scroll-view-item_H bc_yellow"></view>
        <view id="blue" class="scroll-view-item_H bc_blue"></view>
      </scroll-view>
    </view>

    js:

    var order = ['red','yellow','blue','green','red']
    Page({
    
      /**
       * 页面的初始数据
       */
      data: {
        toView:'red',
        scrollTop:100
      },
      upper:function(e){
        console.log('upper',e);
      },
      lower:function(e){
        console.log('lower',e);
      },
      scroll:function(e){
        console.log(e);
      },
      tap:function(e){
        for(var i =0;i<order.length;i++){
          if(order[i] === this.data.toView){
            this.setData({
              toView:order[i+1]
            })
            break;
          }
        }
      },
      tapMove:function(e){
        this.setData({
          scrollTop:this.data.scrollTop + 10
        })
      }
    })

    css:

    /* pages/scrollView/scrollView.wxss */
    .bc_green{
      background-color: green;
    }
    .bc_red{
      background-color: red;
    }
    .bc_yellow{
      background-color: yellow;
    }
    .bc_blue{
      background-color: blue;
    }
    .scroll-view-item{
       300px;
      height: 100px;
    }
    .scroll-view-item_H{
       50%;  
      height: 220rpx;  
      display: inline-block;  
      text-align: center;  
      margin: 0 auto;  
    }
    .scroll-view_H{
       100%;  
      overflow: hidden;  
      white-space: nowrap;  
      height: 220rpx;  
    }

    重点:

    .scroll-view-item_H{
    50%;
    height: 220rpx;
    display: inline-block;
    text-align: center;
    margin: 0 auto;
    }
    .scroll-view_H{
    100%;
    overflow: hidden;
    white-space: nowrap;
    height: 220rpx;
    }
    同时如果给横向滚动中的元素设置了display:flex或者float-left这些横向滚动都不会生效。请小伙伴们注意啦!
     
  • 相关阅读:
    ps 批量杀死进程
    福特F-550 4x4 越野房车设计方案欣赏_房车欣赏_21世纪房车网
    geoserver技术交流群
    JAVA 中基本数组类型转byte数组
    JAVA 图片png和jpeg格式的转化方式
    win10下安装postgresql10 出现Problem running post-install step. Installation may not complete correctly.The database cluster initialisation failed
    centos7安装postgresql和postgis
    jdk1.8的jvm参数的查看以及GC日志的分析
    [warn] Neither build.sbt nor a 'project' directory in the current directory: C:Usershgt
    centos7使用docker制作tomcat本地镜像
  • 原文地址:https://www.cnblogs.com/codeww/p/9048715.html
Copyright © 2011-2022 走看看