1. 程式人生 > >自定義小程式popupwindow彈出框

自定義小程式popupwindow彈出框

在上方彈出

這裡寫圖片描述

  • wxml
<view class="zan-dialog {{ showDialog ? 'zan-dialog--show' : '' }}">
  <view class="zan-dialog__mask" bindtap="toggleDialog" />
  <view class="zan-dialog__container">
    <view style="padding: 100px 0; text-align: center;">Dialog內容</view>
  </view
>
</view>
  • wcss

.zan-dialog__mask {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  background: rgba(0, 0, 0, 0.4);
  display: none;
}

.zan-dialog__container {
  position: fixed;
  top: 0;
  width: 750rpx;
  background: white;
  transform: translateY(-150%);
  transition
: all 0.4s ease
; z-index: 12; }
.zan-dialog--show .zan-dialog__container { transform: translateY(0); } .zan-dialog--show .zan-dialog__mask { display: block; }
  • js
Page({
  data: {
    showDialog: false
  },

//控制 pop 的開啟關閉
  toggleDialog() {
    this.setData({
      showDialog: !this.data
.showDialog
}); }, })

在下方彈出

  • wxml
  <view class="zan-dialog {{ showDialog ? 'zan-dialog--show' : '' }}">
    <view class="zan-dialog__mask" bindtap="toggleDialog" />
    <view class="zan-dialog__container">
      <view style="padding: 100px 0; text-align: center;">Dialog內容</view>
    </view>
  </view>
  • wcss
.zan-dialog__mask {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  background: rgba(0, 0, 0, 0.4);
  display: none;
}

.zan-dialog__container {
  position: fixed;
  bottom: 0;
  width: 750rpx;
  background: white;
  transform: translateY(150%);
  transition: all 0.4s ease;
  z-index: 12;
}

.zan-dialog--show .zan-dialog__container {
  transform: translateY(0);
}

.zan-dialog--show .zan-dialog__mask {
  display: block;
}

  • js
Page({
  data: {
    showDialog: false
  },

//控制 pop 的開啟關閉
  toggleDialog() {
    this.setData({
      showDialog: !this.data.showDialog
    });

  },

})