文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

微信小程序自定义可滚动的弹出框

2024-04-02 19:55

关注

本文实例为大家分享了微信小程序自定义可滚动弹出框的具体代码,供大家参考,具体内容如下

最近在写一个装修的活动,规则是点击按钮弹出加上相应的动画。

首先我们需要一个按钮触发显示(如图,点击详细规则显示规则模态框,图二右边的滚动条在手机上不显示)

思路:小程序自己的模态框不能写样式,这是个比较尴尬的情况,这是一个比较小白的解决方案:

在前端写一个视窗,默认让它隐藏

我这边是用showModel来控制,默认给它false,当点击规则按钮是将showModel的值改为true,点击关闭按钮将showModel的值改为false

小程序前端代码(这是触发按钮)

<!-- 详细规则 -->
  <view style='width:190rpx;height:70rpx;margin-left:76%;padding-top:44%'>
    <button class='form_button'bindtap="openrule">
      <image src='/images/act03.png'style='width:180rpx;height:60rpx;'></image>
      <text class='block font15 white center' decode="{{true}}"  style='width:180rpx;height:60rpx; margin-left:5%; margin-top:-53%;letter-spacing:3rpx;'>详细规则&gt;</text>
    </button>
</view>

小程序前端代码(这是模态框),内含关闭按钮(这里是给text一个点击事件当做关闭按钮)

<view class='tip-content-dialog' wx:if="{{showModal}}">
  <text class='dialogClose block tc font24 white' bindtap='closerule'>×</text>
  <scroll-view class="tip-dialog-view tc bg_rule p_all15 p_b20" scroll-y='true' style='height:85%;padding:30rpx;'>
      <text class='block font26 white tc'style='padding-top:10rpx;'>活动规则</text>
      <view class='p_all10 tj lineH_m'>
        <text class='block font17 white tl'decode="{{true}}" style='padding-top:10rpx;'>活动时间&ensp;:</text>
        <text class='block font15 white tl'style='padding-top:10rpx;padding-left:0rpx;'>{{activity_time}}</text>
        <text class='block font17 white tl'style='padding-top:20rpx;'decode="{{true}}">活动说明&ensp;:</text>
        <text class='block font15 white tj'style='padding-top:10rpx;padding-left:0rpx;'>{{activity_rule}}</text>
      </view>
  </scroll-view>
</view>

js

data: {
    showModal: false,
  },
 
onLoad: function (options) {
    var that = this;
    //活动规则
    wx.request({
      url: app.d.hostUrl + 'activity.activityConf', //此处是你的接口
      data: {
      },
      success: function (res) {
        //console.log(res.data);  //接口中拿到的数据
        var activity_time = res.data.activity_time;
        var activity_rule = res.data.activity_rule;
        //规则数据显示
        that.setData({
          activity_time: activity_time,
          activity_rule: activity_rule,
        });
      }
    })
  },
 
 // 活动详细规则
  openrule: function () {
    this.setData({   //打开规则模块
      showModal: true
    });
  },
  closerule: function () {
    this.setData({   //关闭规则模块
      showModal: false
    });
  },

样式(样式中为了美观加了弹出动画,可直接使用):


button.form_button{
  background-color:transparent;
  padding:0;
  margin:0;
  display:inline;
  position:static;
  border:0;
  padding-left:0;
  padding-right:0;
  border-radius:0;
  
  color:transparent;
}
button.form_button::after{
  content:'';
  width:0;
  height:0;
  -webkit-transform:scale(1);
  transform:scale(1);
  display:none;
  background-color:transparent;
}
 
.tip-content-dialog{
  position: fixed;
  display: flex;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,.5);
  z-index: 99999;
}
 
.tip-content-dialog .tip-dialog-view{
  width: 80%;
  margin: auto;
  border-radius: 25rpx;
  vertical-align: middle;
  animation: tanchu 400ms ease-in;
  
  padding: 20rpx; 
}
 
.tip-content-dialog .btn{
  background: #f2f7fa;
}
@keyframes tanchu{
  from{
    transform: scale(0,0);
    -webkit-transform: scale(0,0);
  }
  to{
    transform: scale(1,1);
    -webkit-transform: scale(1,1);
  }
}
 
.tip-content-dialog .dialogClose{
  position: absolute;
  right:20rpx;
  top: 10rpx;
  width: 60rpx;
  height: 60rpx;
  line-height: 60rpx;
  text-align: center;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯