原生微信小程序 动态(横向,纵向)公告(广告)栏

先看一下动态效果

Y轴滚动公告的原理是swiper组件在页面中的Y轴滚动,属性vertical,其余属性也设置一下autoplay circular interval="3000"

X轴滚动的原理是,利用动画效果,将内容从右往左过渡过去

wxml:

<!-- Y轴滚动公告 -->
<view class="wrapY"><swiperclass="swiper_wrap"verticalautoplaycircularinterval="3000"><block class="block_wrap" wx:for="{{items}}"><swiper-item><view class="itemCon">{{item.title}}</view></swiper-item></block></swiper>
</view>
<!-- X轴滚动公告 -->
<view class='wrapX'><view class="wrapOut"><view class="wrapInner"><view class="contant">{{notice}}</view></view></view>
</view>

wxss:

view,
swiper,
swiper-item,
navigator {padding: 0;margin: 0;box-sizing: border-box;
}
.wrapY {padding: 20rpx;
}
.wrapY .swiper_wrap {width: 95vw;height: 60rpx;background-color: #FFEBDA;border-radius: 30rpx;padding-left: 40rpx;padding-right: 30rpx;
}
.wrapY .swiper_wrap .itemCon {overflow: hidden;white-space: nowrap;text-overflow: ellipsis;line-height: 60rpx;
}
.wrapX {padding: 20rpx;
}
.wrapX .wrapOut {background-color: #FFEBDA;height: 60rpx;border-radius: 30rpx;overflow: hidden;
}
.wrapX .wrapOut .wrapInner {overflow: hidden;margin-left: 40rpx;margin-right: 40rpx;
}
.wrapX .wrapOut .wrapInner .contant {line-height: 60rpx;white-space: nowrap;animation: remindMessage 13s linear infinite;width: 100%;
}
@keyframes remindMessage {0% {-webkit-transform: translateX(100%);}100% {-webkit-transform: translateX(-180%);}
}

less:
 

view,
swiper,
swiper-item,
navigator {padding: 0;margin: 0;box-sizing: border-box;
}
.wrapY {padding: 20rpx;.swiper_wrap {width: 95vw;height: 60rpx;background-color: #FFEBDA;border-radius: 30rpx;padding-left: 40rpx;padding-right: 30rpx;.itemCon {overflow: hidden;white-space: nowrap;text-overflow: ellipsis;line-height: 60rpx;}}
}.wrapX {padding: 20rpx;.wrapOut {background-color: #FFEBDA;height: 60rpx;border-radius: 30rpx;overflow: hidden;.wrapInner {overflow: hidden;// 这里不能用padding,会被当做盒子的一部分,文字到达一定部位之后,仍然不会隐藏margin-left: 40rpx;margin-right: 40rpx;.contant {line-height: 60rpx;white-space: nowrap;animation: remindMessage 13s linear infinite;width: 100%;}}}}@keyframes remindMessage {0% {-webkit-transform: translateX(100%);}100% {-webkit-transform: translateX(-180%);}
}

js:

Page({data: {items: [{title: "公告:由加莉由加莉由加莉由加莉由加莉由加莉由加莉由加莉由加莉"},{title: "公告:真步真步真步真步真步真步真步真步真步真步真步真步真步真步"},{title: "公告:镜华镜华镜华镜华镜华镜华镜华镜华镜华镜华镜华镜华镜华镜华"}],notice: ""},onLoad: function (options) {this.autoChangeX();},autoChangeX: function () {// 定义初始第一条的内容let index = 0;const { items } = this.data;this.setData({notice: items[0].title})index++;// 设置定时器,和动画时间间隔相等// 每隔13秒更换X轴公告的内容setInterval(() => {if (index === items.length - 1) {this.setData({notice: items[index].title})index = 0;} else {this.setData({notice: items[index].title})index++;}}, 1000 * 13)}
})

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/57238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在CSS中,盒模型中的padding、border、margin是什么意思?

在CSS中&#xff0c;盒模型&#xff08;Box Model&#xff09;是用来描述和布局HTML元素的基本概念。它将每个HTML元素看作是一个矩形的盒子&#xff0c;这个盒子包括了内容&#xff08;content&#xff09;、内边距&#xff08;padding&#xff09;、边框&#xff08;border&a…

Python使用 YOLO_NAS_S 模型进行目标检测并保存预测到的主体图片

一、前言&#xff1a; 使用 YOLO_NAS_S 模型进行目标检测&#xff0c;并保存预测到的主体图片 安装包&#xff1a; pip install super_gradients pip install omegaconf pip install hydra-core pip install boto3 pip install stringcase pip install typing-extensions pi…

外部库/lib/maven依赖项 三者关系

外部库(存放项目初始配置的jar包)(它的文件夹里并没有包含lib文件夹的引的外部的依赖的jar包) lib(存放外部导入到项目的依赖的jar包) maven依赖项(管理项目所有的jar包依赖) 三者存放jar包的关系 项目所依赖的全部的jar包 maven依赖项的jar包 外部库中的jar包 lib中的…

指针进阶详解

个人主页&#xff1a;点我进入主页 专栏分类&#xff1a;C语言初阶 C语言程序设计————KTV C语言小游戏 C语言进阶 欢迎大家点赞&#xff0c;评论&#xff0c;收藏。 一起努力&#xff0c;一起奔赴大厂。 目录 1.字符指针 2.指针数组 3.数组指针 4.数组传…

HTTP 框架修炼之道 | 青训营

Powered by:NEFU AB-IN 文章目录 HTTP 框架修炼之道 | 青训营 走进 HTTP 协议HTTP 框架的设计与实现应用层中间件层路由设计协议层 传输层&#xff08;网络层&#xff09;1. BIO&#xff08;Blocking I/O&#xff09;:2. NIO&#xff08;Non-blocking I/O&#xff09;:区别&…

跳跃游戏 II【贪心算法】

跳跃游戏 II class Solution {public int jump(int[] nums) {int cur 0;//当前最大覆盖路径int next 0;//下一步的最大覆盖路径int res 0;//存放结果&#xff0c;到达终点时最少的跳跃步数for (int i 0; i < nums.length; i) {//遍历数组&#xff0c;以给出数组以一个…

第七周第七天学习总结 | MySQL入门及练习学习第二天

实操练习&#xff1a; 1.创建一个名为 cesh的数据库 2.在这个数据库内 创建一个名为 xinxi 的表要求该表可以包含&#xff1a;编号&#xff0c;姓名&#xff0c;备注的信息 3.为 ceshi 表 添加数据 4.为xinxi 表的数据设置中文别名 5.查询 在 xinxi 表中编号 为2 的全部…

网络编程嵌套字

网络编程 程序员主要操作应用层和传输层来实现网络编程 也就是自己写一个程序&#xff0c;让这个程序可以使用网络来通信 这个程序属于应用层&#xff0c;实现通讯就需要获取到传输层提供的服务 这就需要使用传输层提供的api UDP&#xff1a;无连接&#xff0c;不可靠传输&a…

css background实现四角边框

2023.8.27今天我学习了如何使用css制作一个四角边框&#xff0c;效果如下&#xff1a; .style{background: linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) right top,linear-gradient(#33cdfa, #…

Viobot基本功能使用及介绍

设备拿到手当然是要先试一下效果的&#xff0c;这部分可以参考本专栏的第一篇 Viobot开机指南。 接下来我们就从UI开始熟悉这个产品吧&#xff01; 1.状态 设备上电会自动运行它的程序&#xff0c;开启了一个服务器&#xff0c;上位机通过连接这个服务器连接到设备&#xff0c…

无涯教程-分类算法 - 多项式逻辑回归模型函数

Logistic逻辑回归的另一种有用形式是多项式Lo​​gistic回归&#xff0c;其中目标或因变量可以具有3种或更多可能的unordered类型&#xff0c;即没有定量意义的类型。 用Python实现 现在&#xff0c;无涯教程将在Python中实现上述多项式逻辑回归的概念。为此&#xff0c;使用…

学习Linux基础知识与命令行操作

开始学习Linux系统前&#xff0c;首先要掌握计算机基础知识&#xff0c;了解硬件、操作系统、文件系统、网络和安全等概念。对这些基础知识的了解能够帮助理解Linux系统的概念和功能。 在Linux系统中&#xff0c;文件和目录是数据管理的基本单位。每个文件和目录都有一个称为&…

网络防御和入侵检测

网络防御和入侵检测是维护网络安全的关键任务&#xff0c;可以帮助识别和阻止未经授权的访问和恶意行为。以下是一些基本的步骤和方法&#xff0c;用于进行网络防御和入侵检测。 网络防御&#xff1a; 防火墙设置&#xff1a; 部署防火墙来监控和控制网络流量&#xff0c;阻止…

macOS上开源免费的新闻阅读器SABnzbd

SABnzbd Mac版是一款运行在Mac平台上的开源新闻阅读器&#xff0c;这款阅读器界面简约、功效简单强大&#xff0c;使用SABnzbd时可以帮助使用Python语言编写&#xff0c;让用户使用usenet新闻组更便利&#xff0c;是你阅读新闻的好帮手&#xff01; SABnzbd具有以下主要特点&a…

Linux枚举文件目录、获取文件属性

目录 1.枚举指定路径下的文件目录2.获取文件属性stat其他方式&#xff1a;Linux获取文件属性stat()、fstat()、lstat()函数实现stat属性代码 1.枚举指定路径下的文件目录 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <dirent.…

【Java架构-版本控制】-Git基础

本文摘要 Git作为版本控制工具&#xff0c;使用非常广泛&#xff0c;在此咱们由浅入深&#xff0c;分三篇文章&#xff08;Git基础、Git进阶、Gitlab搭那家&#xff09;来深入学习Git 文章目录 本文摘要1.Git仓库基本概念1.1 远程仓库(Remote)1.2 本地库(Repository) 2. Git仓库…

PMAC与Modbus主站进行Modbus Tcp通讯

PMAC与Modbus主站进行Modbus Tcp通讯 创建modbus通讯参数 在项目的PMAC Script Language\Global Includes下创建一个名为00_Modbus_Para.pmh的pmh文件。 Modbus[0].Config.ServerPort 0 Modbus[0].Config.ConnectTimeOut 6000 Modbus[0].Config.SendRecvTimeOut 0 Modbu…

基于Visual studio创建API项目

API&#xff08;英文全称&#xff1a;Application Programming Interface,中文&#xff1a;应用程序编程接口&#xff09; 为什么要 通过API接口可以与其他软件实现数据相互通信&#xff0c;API这项技术能够提高开发效率。 本文是基于vs2017 .net平台搭建API。希望可以帮助到学…

HBase--技术文档--基本概念--《快速扫盲》

官网 Apache HBase – Apache HBase™ Home 阿里云hbase 云数据库HBase_大数据存储_订单风控_数据库-阿里云 云数据库 HBase-阿里云帮助中心 基本概念 HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。它基于Hadoop&#xff0c;采用列式存储方式&#xff0c;可…

【conda install】网络慢导致报错CondaHTTPError: HTTP 000 CONNECTION FAILED for url

⭐⭐问题&#xff1a; 部署安装环境经常会出现由于网络慢问题&#xff0c;导致conda安装不了库&#xff0c;报错如下&#xff1a; Solving environment: failedCondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/…