web端--向上滚动加载数据展示

实现效果: 

向上轮播数据

 html部分:


<div style="margin-top:10px;width:100%;position: relative;">
   <div class="tbtcContainer">
     <div class="tbtcContainer-scroll">
      <!-- 默认数据 -->
      <ul class="tbtcContainer-scroll-list">
        <li class="winner" v-for="(item, i) in winnerList" :key="i" >
           {{item.no}} {{item.gift}}
        </li>
      </ul>
      <!-- 动态数据 -->
        <ul class="tbtcContainer-scroll-list">
          <li class="winner" v-for="(item, i) in winnerList" :key="i" >
           {{item.no}} {{item.gift}}
          </li>
         </ul>
      </div>
      <div class="tbtcContainer-overlay"></div>
    </div>
</div>

css部分:

.tbtcContainer {
  position: absolute;
  left: 9px;

  &-scroll {
    height: 136px;
    overflow: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none;

    &-positionBlock {
      height: 136px;
    }
  }

  &-scroll::-webkit-scrollbar {
    display: none;
  }

  &-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 136px;
  }
  .tbtcContainer-scroll-list{
    & > li{
      margin-top: 10px;
      padding-left: 30px;
      width: 353px;
      height: 40px;
      line-height: 40px;
      text-align: center;
      background: #ECA637;
      font-size: 14px;
      font-family: PingFang SC-Bold, PingFang SC;
      font-weight: bold;
      color: #FFFFFF;
      text-align: left;
    }
  }
}

js部分:

btocInterval:any
playWinner()

playWinner(){
 // 获取滚动容器
 const container = document.getElementsByClassName('tbtcContainer-scroll')[0];
 this.btocInterval = setInterval(() => {
  container.scrollTop++;
  const numbers = this.randomNum(100,500) // 生成随机数
  let newGift
  /** 以下判断并不重要*/
  if(numbers %3 ===0){
    newGift = 'gets 7-days VIP coupon'
  }
  if(numbers %2 ===0){
     newGift = 'gets Thanksgiving Gifts×5'
  }
  if(numbers %2 ===1){
     newGift = 'gets Message Chat coupons×15'
  }
  if(numbers %4 ===1){
     newGift = 'gets cions×300'
  }
  /** 以上判断并不重要*/
  this.winnerList.push({
     no:`${'M'+numbers+'****'}`,gift:`${newGift}`
   })

 }, 70)
}

// 生成随机数
randomNum(m:number, n:number) {
  return Math.floor(Math.random() * (n - m + 1) + m);
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值