zoukankan      html  css  js  c++  java
  • 小程序公告消息(滚动消息)

    这次我主要想总结一下微信小程序实现上下滚动消息提醒,主要是利用swiper组件来实现,swiper组件在小程序中是滑块视图容器。

    我们通过vertical属性(默认为false,实现默认左右滚动)设置为true来实现上下滚动。

    (需要注意的是:只要你的swiper存在vertical属性,无论你给值为true或者false或者不设参数值,都将实现上下滚动)

    wxml

      <swiper class="swiper_container_notice swiper_container" vertical="true" autoplay="true" circular="true" interval="2000">
        <block wx:for="{{msgList}}" wx:if="{{item.id}}">
            <swiper-item bindtap="messageDetails"  data-id="{{item.id}}" class="swiper_notice swiper">
              <image class="van-notice-bar__left-icon_notice" src="/assets/images/message.png"></image>
              <view class="swiper_item_notice swiper_item" data-id="{{item.id}}">{{item.title}}</view>
            </swiper-item>
        </block>
      </swiper>
    </view>

    js

      messageDetails(e){
          wx.navigateTo({
            url: '/pages/setting/protocol/splAgreement/index'     
            })
     
      },
    var app = getApp()
    Page({
      data: {
      },
      onLoad(e) {
        console.log(e.title)
        this.setData({
          msgList: [
            { url: "url", title: "公告:多地首套房贷利率上浮 热点城市渐迎零折扣时代" },
            { url: "url", title: "公告:悦如公寓三周年生日趴邀你免费吃喝欢唱" },
            { url: "url", title: "公告:你想和一群有志青年一起过生日嘛?" }]
        });
      }
    })

    wxss

    .swiper_container {
      height: 55rpx;
      position: absolute;
      bottom: 0;
       100%;
      color: #fff;
    }
    .swiper_item_notice {
      font-size: 25rpx;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      letter-spacing: 2px;
    }
    .swiper_notice{
      display: flex !important;
      align-items: center !important;
      padding-left: 20rpx !important;
    }
    .swiper_notice image{
       35rpx;
      height: 35rpx;
      margin-right:10rpx;
      margin-right: 40rpx;
    }

    从轮播页面切换到其他页面,在跳转回来的时候,会涉及到不更新swiper导致不显示或显示问题的解决办法

    添加  current="{{current}}"

     <swiper current="{{current}}" class="swiper_container_notice swiper_container" vertical="true" autoplay="true" circular="true" interval="2000">
        <block wx:for="{{msgList}}" wx:if="{{item.id}}">
            <swiper-item current="{{current}}" bindtap="messageDetails"  data-id="{{item.id}}" class="swiper_notice swiper">
              <image class="van-notice-bar__left-icon_notice" src="/assets/images/message.png"></image>
              <view class="swiper_item_notice swiper_item" data-id="{{item.id}}">{{item.title}}</view>
            </swiper-item>
        </block>
      </swiper>

    js current设置为0

     data: {
        current:0,
    }
      
    获取轮播数据
     this.setData({
              msgList:[res]
            },()=>{
              this.setData({
                current: 0
              })
            })
  • 相关阅读:
    《英语语法新思维初级教程》学习笔记(七)五种基本句型
    《英语语法新思维初级教程》学习笔记(六)实义动词与(情态)助动词
    《英语语法新思维初级教程》学习笔记(五)形容词
    《英语语法新思维初级教程》学习笔记(四)数量限定词和个体限定词
    C# Redis存Session Hash存对象
    MVC中Spring.net 对基类控制器无效 过滤器控制器无效
    C# datagridview列绑定类中类的属性
    商品评分效果JavaScript
    C# SQL数据库学习时遇到到一些异常
    C语言用一维数组打印杨辉三角(原:无意中想到)
  • 原文地址:https://www.cnblogs.com/shuihanxiao/p/13475393.html
Copyright © 2011-2022 走看看