国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 課堂 > 小程序 > 正文

微信小程序頁面縮放式側滑效果的實現代碼

2020-03-21 16:06:53
字體:
來源:轉載
供稿:網友

先給大家展示下效果圖,大家感覺不錯,請參考實現代碼:

微信小程序,頁面縮放,側滑效果,代碼

實現原理:點擊按鈕,往需要動畫的div中添加或移除擁有動畫效果的class。

由于微信小程序中不能操作page這個根節點,所以,只有用一個div(view)來模仿page根節點。

1.結構

<view class='page {{isFix?"pageShow":"pageHide"}}' >  <view class='header'>        <view class='h-toggle iconfont icon-list' bindtap='pageBtn'></view>  </view></view><view class='r-box {{isFix?"fixShow":"fixHide"}}' bindtap='fixHide'>  <view class='r-list' catchtap='fixStopBu'>    <view class='rl-close' catchtap='fixClose'>      <text class='iconfont icon-close'></text>    </view>      </view></view>

 上面的是最主要的結構,其它的內容就不貼了。

  (1)  isFix是切換動畫名的狀態

  (2)  r-box設置了bindtap點擊事件之后,r-list也設置了一個不冒泡的catchtap事件,是為了實現點擊r-box的空白處時,不冒泡的效果。

2.樣式

page { height: 100%; width: 100%;}.page { width: 100%; height: 100%; box-shadow: 0 0 10px rgba(26,26,26,.1);}.r-box { position: fixed; top: 0; right: 0; width: 100%; height: 100%;}.r-box .r-list { float: right; width: 66%; height: 100%; background: white;}.fixHide { transition: all .3s ease; transform: translateX(100%);}.fixShow { transition: all .3s ease; transform: translateX(0%);}.pageHide { transition: all .3s ease; transform: translateX(0) scaleY(1);}.pageShow { transition: all .3s ease; transform: translateX(-70%) scaleY(0.9);}

 這些是最主要的樣式:

  (1)  class為page的div(view),就是模擬整個page頁面,所以寬高需要設為100%。

  (2)  r-box是右邊側滑的div(view)

  (3)  fixHide,fixShow這是側滑欄的動畫效果。

  (4)  pageHide,pageShow這是整個頁面的動畫效果

  (5)  由于transform只能出現一次,所以當有兩個即以上的動畫效果時,只寫在一個transform里,然后把不同的動畫效果分開就行。

  (6)  過渡效果的速度曲線我使用的是ease,如果用linear,在手機上會感覺很卡頓。

 3.js

Page({  data:{   isFix:false,//右側列表是否顯示      },  // 右側列表顯示按鈕  pageBtn:function(){   this.setData({    isFix:true   })  },  //右側列表空白點擊  fixHide:function(){   this.setData({    isFix: false   })  },  //右側列表防冒泡,必須有,雖然沒內容  fixStopBu: function () {},  //右側列表關閉按鈕  fixClose:function(){   this.setData({    isFix:false   })  },})

 實現的過程大致就是這樣。還是挺簡單的。不知道用小程序的動畫api做起來會不會簡單一些或者更順暢一點,這個就看自己勤不勤了。 

總結

以上所述是小編給大家介紹的微信小程序頁面縮放式側滑效果的實現代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 迁安市| 宁波市| 柳林县| 西盟| 阿克| 望江县| 惠州市| 澄迈县| 大名县| 乌兰察布市| 广水市| 三明市| 南陵县| 广东省| 沂南县| 林西县| 东乡族自治县| 仁化县| 晋城| 洪湖市| 永清县| 乐清市| 泰安市| 芷江| 赤峰市| 盐城市| 赤壁市| 双桥区| 宜兰县| 东丰县| 迭部县| 增城市| 台安县| 香格里拉县| 铁岭县| 台中县| 洛隆县| 洛浦县| 桐乡市| 景宁| 喜德县|