首頁 >微信小程式 >小程式開發 >微信小程式中如何自訂showmodal彈出框(附程式碼)

微信小程式中如何自訂showmodal彈出框(附程式碼)

不言
不言原創
2018-08-10 14:11:447283瀏覽

這篇文章帶給大家的內容是關於微信小程式中如何自訂showmodal彈出框(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

最近一直忙著修改bug 增加新功能,好久沒總結了,也不知道該總結啥,先寫一個自訂showmodal框吧

廢話少說直接上代碼

wxml部分

<view class="mask" catchtouchmove="preventTouchMove" wx:if="{{showModal}}"></view>
<view class="modalDlg" wx:if="{{showModal}}">
<view class=&#39;img_wrap&#39;>
<image src=&#39;http://pbqyqto63.bkt.clouddn.com/%E9%92%BB%E7%9F%B3.png&#39;></image>
</view>
<view class=&#39;useralert_huiyuan&#39;>{{uservip}}</view>
<view class=&#39;useralert_quanyi&#39;>享受以下会员权益</view>
<view class=&#39;fenggexian&#39;></view>
<view class=&#39;vipinfo&#39;>{{vipinfo}}</view>
<view class=&#39;shutalert&#39; bindtap="go">
<image src=&#39;http://pbqyqto63.bkt.clouddn.com/%E9%94%99%E5%8F%B7.png&#39;></image>
</view>
</view>

wxss部分

.mask{
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 0;
background: #000;
z-index: 9000;
opacity: 0.7;
}
.modalDlg{
width: 550rpx;
height: 520rpx;
position: fixed;
top: 25%;
z-index: 9999;
margin: 0rpx 100rpx 185rpx 100rpx;
background-color: #fff;
border-radius: 36rpx;
display: flex;
flex-direction: column;
align-items: center;
}

其中mask 是遮罩層樣式

modalDlg是彈出去的容器樣式

其他的就是很隨便的,自己想寫什麼寫什麼。

.img_wrap{
width: 130rpx;
height: 130rpx;
background: white;
border-radius:50%;
border:1px solid #0097ff;
margin: 0rpx auto;
position: absolute;
top: -65rpx;
margin-bottom: 30rpx;
}
.img_wrap image{
width: 100rpx;
height: 100rpx;
padding-top:15rpx;
padding-left:15rpx;
margin: 0rpx auto;
}
.useralert_huiyuan
{
font-size: 13px;
margin-top: 100rpx;
}
.useralert_quanyi
{
font-size: 13px;
color: darkgray;
}
.fenggexian{
width: 100%;
margin-top: 50rpx;
border-bottom:1px solid #e8e8e8;
}
.vipinfo{
margin-top: 30rpx;
color: #6698ff;
font-size: 11px;
}
 
.shutalert{
width: 110rpx;
margin: 0rpx auto
}
.shutalert image{
width: 100rpx;
height: 100rpx;
position: absolute;
bottom: -120rpx;
}

其中 mask 是遮罩層樣式

modalDlg是彈出去的容器樣式

其他的就是很隨意的,自己想寫什麼寫什麼。

js部分

在data[]裡定義一個showModal : false  初始一定為false

我是因為需要分開寫了兩個方法來控制開關,比較死板,這樣的

submit: function() {
this.setData({
showModal: true
})
},
go: function() {
this.setData({
showModal: false
})
},

有一個更直接的

#可以一個方法控制開關,也可用於mask遮罩層,點擊遮罩層,關閉

在此我隨意寫下

在data裡定義一個showalert : false

方法:

alert: function() {
var that= this;
this.setData({
showalert: !that.data.showalert
})
},

自訂彈框想怎麼用

相關推薦:

微信小程式中如何實作列表渲染多層嵌套循環

#利用微信小程式中Canvas API來合成海報產生元件封裝

微信小程式更新webview頁面的三種方法

以上是微信小程式中如何自訂showmodal彈出框(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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