溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

微信小程序頁(yè)面上下滾動(dòng)效果

發(fā)布時(shí)間:2020-10-17 00:18:38 來源:腳本之家 閱讀:393 作者:a_靖 欄目:web開發(fā)

本文實(shí)例為大家分享了微信小程序頁(yè)面上下滾動(dòng)的具體代碼,供大家參考,具體內(nèi)容如下

看圖

微信小程序頁(yè)面上下滾動(dòng)效果

源碼

<view class="container container-fill">
 <view class="scroll-fullpage" bindtouchstart="scrollTouchstart" bindtouchmove="scrollTouchmove" bindtouchend="scrollTouchend" >
 <view class="section section01 {{scrollindex==0?'active':''}}" >
  <text class="section-maintitle">頁(yè)面1</text>
  <text class="section-subtitle">我的頁(yè)面”1</text>
 </view>
 <view class="section section02 {{scrollindex==1?'active':''}}" >
  <text class="section-maintitle">頁(yè)面2</text>
  <text class="section-subtitle">我的頁(yè)面”2</text>
 </view>
 <view class="section section03 {{scrollindex==2?'active':''}}" >
  <text class="section-maintitle">頁(yè)面3</text>
  <text class="section-subtitle">我的頁(yè)面”3</text>
 </view>
 <view class="section section04 {{scrollindex==3?'active':''}}" >
  <text class="section-maintitle">頁(yè)面4</text>
  <text class="section-subtitle">我的頁(yè)面”4</text>
 </view>
 <view class="section section05 {{scrollindex==4?'active':''}}" >
  <text class="section-maintitle">無縫對(duì)接雙創(chuàng)服5</text>
  <text class="section-subtitle">我的頁(yè)面”5</text>
 </view>
 </view>
</view>

js

Page({
 data: {
  scrollindex:0, //當(dāng)前頁(yè)面的索引值
  totalnum:5, //總共頁(yè)面數(shù)
  starty:0, //開始的位置x
  endy:0, //結(jié)束的位置y
  critical: 100, //觸發(fā)翻頁(yè)的臨界值
  margintop:0, //滑動(dòng)下拉距離
 },
 onLoad: function () {
 },
 scrollTouchstart:function(e){
  let py = e.touches[0].pageY;
  this.setData({
   starty: py
  })
 },
 scrollTouchmove:function(e){
  let py = e.touches[0].pageY;
  let d = this.data;
  this.setData({
   endy: py,
  })
  if(py-d.starty<100 && py-d.starty>-100){  
   this.setData({
    margintop: py - d.starty
   })
  }
 },
 scrollTouchend:function(e){
  let d = this.data;
  if(d.endy-d.starty >100 && d.scrollindex>0){
   this.setData({
    scrollindex: d.scrollindex-1
   })
  }else if(d.endy-d.starty <-100 && d.scrollindex<this.data.totalnum-1){
   this.setData({
    scrollindex: d.scrollindex+1
   })
  }
  this.setData({
    starty:0,
    endy:0,
    margintop:0
  })
 },
})

css

.container-fill{
 height: 100%;
 overflow: hidden;
}
.scroll-fullpage{
 height: 100%;
 transition: all 0.3s;
}
.section{
 height: 100%;
}
.section-maintitle{
 display: block;
 text-align: center;
 font-size: 50rpx;
 color: #fff;
 font-weight: bold;
 letter-spacing: 10rpx;
 padding-top: 140rpx;
}
.section-subtitle{
 display: block;
 text-align: center;
 font-size: 40rpx;
 color: #fff;
 font-weight: bold;
 letter-spacing: 10rpx;
}
.active .section-maintitle,
.active .section-subtitle{
 animation: mymove 0.8s;
}
@keyframes mymove{
 from {
 transform: translateY(-400rpx) scale(0.5) rotateY(90deg);
 }
 to {
 transform: translateY(0) scale(1) rotateY(0);
 }
}

 以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI