首頁  >  文章  >  web前端  >  微信小程式商品詳情頁中如何新增彈出框

微信小程式商品詳情頁中如何新增彈出框

php中世界最好的语言
php中世界最好的语言原創
2018-05-15 14:06:263887瀏覽

這次帶給大家微信小程式商品詳情頁中如何新增彈出框,微信小程式商品詳情頁中新增彈出框的注意事項有哪些,下面就是實戰案例,一起來看一下。

電商項目中商品詳情頁,加入購物車或下訂單時可以選擇商品屬性的彈出框,透過設定view的平移動畫,達到從底部彈出的樣式

1.js程式碼(一般情況下只呼叫顯示對話框的函數,當點擊對話框外部的時候,對話框可以消失)

//显示对话框
 showModal: function () {
  // 显示遮罩层
  var animation = wx.createAnimation({
   duration: 200,
   timingFunction: "linear",
   delay: 0
  })
  this.animation = animation
  animation.translateY(300).step()
  this.setData({
   animationData: animation.export(),
   showModalStatus: true
  })
  setTimeout(function () {
   animation.translateY(0).step()
   this.setData({
    animationData: animation.export()
   })
  }.bind(this), 200)
 },
 //隐藏对话框
 hideModal: function () {
  // 隐藏遮罩层
  var animation = wx.createAnimation({
   duration: 200,
   timingFunction: "linear",
   delay: 0
  })
  this.animation = animation
  animation.translateY(300).step()
  this.setData({
   animationData: animation.export(),
  })
  setTimeout(function () {
   animation.translateY(0).step()
   this.setData({
    animationData: animation.export(),
    showModalStatus: false
   })
  }.bind(this), 200)
 }

2.wxss代碼

/*使屏幕变暗 */
.commodity_screen {
 width: 100%;
 height: 100%;
 position: fixed;
 top: 0;
 left: 0;
 background: #000;
 opacity: 0.2;
 overflow: hidden;
 z-index: 1000;
 color: #fff;
}
/*对话框 */
.commodity_attr_box {
 height: 300rpx;
 width: 100%;
 overflow: hidden;
 position: fixed;
 bottom: 0;
 left: 0;
 z-index: 2000;
 background: #fff;
 padding-top: 20rpx;
}

3.wxml程式碼(其中的showModalStatus變數要現在js程式碼中的data物件中初始化,初始化為false,因為最初的時候對話方塊並沒有顯示)

 <!--屏幕背景变暗的背景 -->
 <view class="commodity_screen" bindtap="hideModal" wx:if="{{showModalStatus}}"></view>
 <!--弹出框 -->
 <view animation="{{animationData}}" class="commodity_attr_box" wx:if="{{showModalStatus}}">在这里写弹出框里面的布局</view>

4.設定點選事件,給目標view設定點擊函數showModal()或hideModal()

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

JS設計模式中鍊式呼叫使用解析

vue-cli專案中增加後台mock接口步驟詳解

以上是微信小程式商品詳情頁中如何新增彈出框的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn