老师,我想写一个下拉显示全部,松开手指弹回,该怎么写?

来源:5-2 组件概述

精慕门1505668

2020-03-06

老师我想写一个下来显示全部卡片内容,松手弹回一半卡片内容,应该怎么做?我用了moveable-area 但是有bug,每次下拉后,就不能滚动页面了。
图片描述

//js部分
 handleTouchStart: function(e){
    console.log("开始:" + e.touches[0].pageY)
    let touchStart = e.touches[0].pageY
    this.setData({
      touchStart : touchStart
    })
  },
  
  handleTouchEnd: function(e){
    console.log("结束:" + e.changedTouches[0].pageY)
    let touchEnd = e.changedTouches[0].pageY
    let touchStart = this.data.touchStart
    this.setData({
      moveY: 0
    })

    let scrollTop = this.data.scrollTop
    if(scrollTop == 0){
      this.setData({
        disabledMove: false
      })
    }else if(scrollTop > 0 || (touchStart > touchEnd)){
      this.setData({
        disabledMove: true
      })
    }
  },

  //监听滚动条位置
  onPageScroll: function(e){
    // console.log(e.scrollTop)
    this.setData({
      scrollTop: e.scrollTop
    })
  },
<!--wxml 部分-->
 <movable-area style="width: 100%; height: 250rpx;">
      <movable-view style="width: 100%;" direction="vertical" inertia="{{true}}" y="{{moveY}}" bindtouchstart="handleTouchStart" bindtouchend="handleTouchEnd" disabled="{{disabledMove}}">
        <view class="bottom-container">
        可以下拉的部分(黄色框部分)
        </view>
   </movable-view>
    </movable-area>

写回答

1回答

7七月

2020-03-06

这种动效,小程序上不建议做,本身页面就有下拉的效果。自己做的话 很难控制。

0
0

纯正商业级微信小程序应用实战,全方位小程序特性讲解

真实数据的高质量小程序项目,学会直接工作

4782 学习 · 2125 问题

查看课程