本文實例為大家分享了微信小程序實現彈出層效果的具體代碼,供大家參考,具體內容如下
先看下效果圖吧
其實這個效果實現起來很簡單,就是通過三目運算符來控制遮罩層的顯示和隱藏
貼代碼了:
規則按鈕:
<text class='rule' bindtap='showRule'>規則</text>
遮罩層:我這個數據是從后臺拿來動態渲染到頁面的
<!-- 規則提示 --> <view class="ruleZhezhao {{isRuleTrue?'isRuleShow':'isRuleHide'}}"> <view class='ruleZhezhaoContent'> <view class='ruleZhezhaoText' wx:for='{{rule}}' wx:for-index='index'> <text>{{index+1}}</text> <text>{{item}}</text> </view> <image src='../../images/rule-hide.png' class='ruleHide' bindtap='hideRule'></image> </view> </view> <!-- end -->
css:
/* 規則提示層 */ .isRuleShow{ display: block; } .isRuleHide{ display: none; } .ruleZhezhao{ height: 100%; width: 100%; position: fixed; background-color:rgba(0, 0, 0, .5); z-index: 2; top: 0; left: 0; } .ruleZhezhaoContent{ padding: 20rpx 0; width: 80%; background: #e1d2b1; margin: 40% auto; border-radius: 20rpx; display: flex; flex-direction: column; justify-content: space-around; align-items: center; position: relative; } .ruleZhezhaoText{ width: 80%; font-size: 30rpx; color: #856d5f; display: flex; flex-direction: row; align-items: center; margin: 25rpx 0 25rpx 0; } .ruleZhezhaoText text:nth-child(1){ color: #fff; font-size: 40rpx; height: 60rpx; width: 60rpx; background: #664a2c; display: block; text-align: center; line-height: 60rpx; border-radius: 30rpx; margin-right: 10rpx; } .ruleZhezhaoText text:nth-child(2){ flex-wrap:wrap; width: 80%; } .ruleHide{ height: 60rpx!important; width: 60rpx!important; position: absolute; top: -20rpx; right: -20rpx; } .rule{ display: block; border: 1px solid #fff; width: 100rpx; text-align: center; line-height: 60rpx; color: #fff; height: 60rpx; font-size: 30rpx; border-radius: 30rpx; position: absolute; top: 10%; right: 5%; } /* end */
點擊規則按鈕:
//打開規則提示 showRule: function () { this.setData({ isRuleTrue: true }) },
點擊關閉按鈕:
//關閉規則提示 hideRule: function () { this.setData({ isRuleTrue: false }) },
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com