美文网首页跨平台开发微信小程序开发
微信小程序 Utils丨Scrollview 实现横向滑动时间选

微信小程序 Utils丨Scrollview 实现横向滑动时间选

作者: MobMsg | 来源:发表于2019-09-26 16:17 被阅读0次

    运行效果

    涵盖全 24 个时段,左右滑动可见其它。当前时段提示为【抢购进行中】,之前时段为【已开抢】,之后时段为【即将开始】


    JS

      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
        that = this;
        that.setData({
          timeList: that.initTimeList(24)
        })
      },
    
      /**
       * 时段数组生成
       * @param itemNum 需要的时段数量
       * 
       * return 生成的完整数组
      */
      initTimeList:function(itemNum){
        // 基础判断
        if (itemNum <= 0){
          console.log(' Error From initTimeList():所需时段数不可小于等于零')
          return []
        }
    
        // 当前时段
        var nowTime = new Date().getHours()
    
        // 组装数组
        var timeList = []
        for (var t = 0; t < itemNum ; t++){
          t > 9 ? (timeList.push({ 'index': t, 'time': t + ':00', 'hint': (t == nowTime ? '抢购进行中' : (t > nowTime ? '即将开始' : '已开抢')) })) : (timeList.push({ 'index': t, 'time': '0' + t + ":00", 'hint': (t == nowTime ? '抢购进行中' : (t > nowTime ? '即将开始' : '已开抢')) }))
        }
        return timeList
      },
    
      /**
       * 时间选择器列表点击监听
       * @param item 被点击的item对象,包含所有信息
      */
      clickItem:function(item){
        // 列表点击事件
        console.log(item.currentTarget.dataset.item.index)
      }
    
    

    WXML

    <scroll-view scroll-x class="scroll-x">
      <view wx:for="{{timeList}}" wx:key="{{index}}" class="view_item" >
        <view class="view_item_time" bindtap="clickItem" data-item="{{item}}">{{item.time}}</view>
        <view class="view_item_hint" bindtap="clickItem" data-item="{{item}}">{{item.hint}}</view>
      </view>
    </scroll-view>
    

    WXSS

    .scroll-x{
        white-space:nowrap;
        display:flex;
        background: #333;
    }
    
    .view_item{
        display:inline-block;
        padding: 20rpx;
    }
    
    .view_item_time{
        width:100rpx;
        height:50rpx;
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:0.8rem;
        color:#FFFFFF;
        background:#000;
    }
    
    .view_item_hint{
        width:100rpx;
        height:50rpx;
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:0.5rem;
        color:#FFFFFF;
        background:#000;
    }
    
    /* 隐藏scrollbar */
    ::-webkit-scrollbar{
        width: 0;
        height: 0;
        color: transparent;
    }
    

    相关文章

      网友评论

        本文标题:微信小程序 Utils丨Scrollview 实现横向滑动时间选

        本文链接:https://www.haomeiwen.com/subject/wdddqctx.html