返回

专注连锁门店会员营销管理系统

线上+线下+进销存+收银+会员
HiShop > Hi小程序 > 小程序开发 > 开发实例 >

小程序自定义下拉动画的实现方式

2018-01-17 作者:黄珊

  小程序中可以自定义设置实现下拉菜单带动画,下面是实现这种形式的方法:

  在pick-header里添加筛选项,在pick-container添加被筛选的选项内容,content里显示真正的内容。

  content的高度是会在js里根据当前手机分辨率所动态计算的,高度值为contentHeight,所以在里面可以嵌套一个scroll-view,设置高度为contentHeight即可实现内容滑动。

  好了,废话不多说,直接看图附代码。


下拉菜单示例.gif

wxml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<view class="content-container">
  <view class="pick-header" bindtap="onPickHeaderClick">
    筛选pick-header view z-index:60
  </view>
 
  <view class="pick-container {{needAnimation ? (openPicker ? 'slidown' : 'slidup') : ''}}" >
    筛选项 pick-container view z-index:50
  </view>
 
  <view class="shadow" style="height:{{contentHeight}}px;line-height:{{contentHeight}}px" hidden="  {{!openPicker}}">我是半透明阴影遮罩 view shadow  z-index:40</view>
 
  <view class="content" style="height:{{contentHeight}}px">
    我是内容content view z-index:20
  </view>
</view>

wxss

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/*根布局*/
.content-container {
width100%;
positionabsolute;
}
 
/*筛选头部*/
.pick-header {
  width100%;
  height72rpx;
  z-index60;
  positionfixed;
 background-color: lightcoral;
}
 
/*筛选项容器布局*/
.pick-container {
  width100%;
  height300rpx;
  background-color: lightgoldenrodyellow;
  positionabsolute;
  z-index50;
  top-228rpx;
}
 
/*筛选项隐藏 显示动画 start*/
@keyframes slidown {
  from {
    transform: translateY(0%);
  }
 
  to {
    transform: translateY(100%);
  }
}
 
.slidown {
  displayblock;
  animation: slidown 0.1s ease-in both;
}
 
@keyframes slidup {
  from {
    transform: translateY(100%);
  }
 
  to {
    transform: translateY(0%);
  }
}
 
.slidup {
  displayblock;
  animation: slidup 0.2s ease-in both;
}
/*筛选项隐藏 显示动画 end*/
 
/*筛选项显示出来的时候的阴影*/
.shadow {
  width100%;
  background-color: rgba(1110.2);
  positionabsolute;
  z-index40;
  top72rpx;
}
 
/*内容容器布局*/
.content {
  width100%;
  positionabsolute;
  top72rpx;
  z-index20;
}

js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Page({
data: {
    openPicker: false,
    needAnimation : false,
    contentHeight: 0
},
 
onLoad: function () {
 
},
 
onReady: function () {
    var that = this;
    wx.getSystemInfo({
        success: function (res) {
            that.setData({
                //动态根据手机分辨率来计算内容的高度(屏幕总高度-顶部筛选栏的高度)
                contentHeight: (res.windowHeight - 72 * res.screenWidth / 750)
            });
        }
    })
},
 
onPickHeaderClick: function () {
    this.setData({
        openPicker: !this.data.openPicker,
        needAnimation : true
    })
  },
})

 

  以上就是实现微信小程序下拉菜单(带动画)的方法实例的详细内容,希望可以帮助到到大家。

线上+线下+进销存+收银+会员门店零售管理好帮手

  • 极速收银管理

    门店能实现快速收银,提升门店经营效率。

  • 进销存管理

    系统自带进销存管理,更好管理库存销售。

  • 软硬件一体化

    配备收银硬件一站式整体服务。

收 银 会员管理 库存管理 商品管理 交接班 数据报表 营销促单 售后处理 多种收款

获取报价
【本站声明】

1、本网站发布的该篇文章,目的在于分享电商知识及传递、交流相关电商信息,以便您学习或了解电商知识,请您不要用于其他用途;
2、该篇文章中所涉及的商标、标识的商品/服务并非来源于本网站,更非本网站提供,与本网站无关,系他人的商品或服务,本网站对于该类商标、标识不拥有任何权利;
3、本网站不对该篇文章中所涉及的商标、标识的商品/服务作任何明示或暗示的保证或担保;
4、本网站不对文章中所涉及的内容真实性、准确性、可靠性负责,仅系客观性描述,如您需要了解该类商品/服务详细的资讯,请您直接与该类商品/服务的提供者联系。

推荐文章

门店系统 获取报价 立即咨询 免费试用