微信小程序实现简单文字跑马灯


Posted in Javascript onMay 26, 2020

本文实例为大家分享了微信小程序实现文字跑马灯 的具体代码,供大家参考,具体内容如下

效果如图

微信小程序实现简单文字跑马灯

WXML

<scroll-view class="container">
 <view class="scrolltxt">
 <view class="marquee_box">
 <view class="marquee_text" style="transform: translateX(-{{marqueeDistance}}px)">
 <text>{{text}}</text>
 <text style="margin-right:{{marquee_margin}}px;"></text>
 <text style="margin-right:{{marquee_margin}}px;">{{text}}</text> 
 </view>
 </view>
 </view>
</scroll-view>

WXSS

.container {display: flex;flex-direction: column;justify-content: space-between;box-sizing: border-box;}
.scrolltxt{padding:0 20rpx;background:#f8f8f8;}
.marquee_box {position:relative;color:#333;height:90rpx;display:block;overflow:hidden;} 
.marquee_text {white-space: nowrap;position:absolute;top:0;font-size:14px;height:90rpx;line-height:90rpx;}

JS

data: {
 //滚动字幕
 text: "温馨提示:为了保证其他购买者的利益,每个 账号针对同一商品只允许退款一次,请您谨慎操作。",
 marqueePace: 1,//滚动速度
 marqueeDistance: 0,//初始滚动距离
 marquee_margin: 30,//间距
 size: 14,//字号
 time: '',// 定时器
 },

onHide: function () {
 //清空滚动字幕定时器,避免锁屏或页面隐藏后移动速度越来越快
 clearInterval(this.data.time);
 },

 onShow: function (e) {
 var that = this;
 var length = that.data.text.length * that.data.size;//文字长度
 var windowWidth = wx.getSystemInfoSync().windowWidth;// 屏幕宽度
 //console.log(length,windowWidth);
 that.setData({
 length: length,
 windowWidth: windowWidth
 });
 that.scrolltxt();// 第一个字消失后立即从右边出现
 },

 /**
 * 滚动字幕
 */
 scrolltxt: function () {
 var that = this;
 var length = that.data.length;//滚动文字的宽度
 var windowWidth = that.data.windowWidth;//屏幕宽度
 var time = this.data.time
 if (length > windowWidth) {
 time = setInterval(function () {
 var maxscrollwidth = length + that.data.marquee_margin;//滚动的最大宽度,文字宽度+间距,如果需要一行文字滚完后再显示第二行可以修改marquee_margin值等于windowWidth即可
 var crentleft = that.data.marqueeDistance;
 if (crentleft < maxscrollwidth) {//判断是否滚动到最大宽度
  that.setData({
  marqueeDistance: crentleft + that.data.marqueePace
  })
 }
 else {
  that.setData({
  marqueeDistance: 0 // 直接重新滚动
  });
  clearInterval(time);
  that.scrolltxt();
 }
 }, 20);
 }
 else {
 that.setData({ marquee_margin: "1000" });//只显示一条不滚动右边间距加大,防止重复显示
 }
 that.setData({
 time:time
 })
 },

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个判断email合法性的函数[非正则]
Dec 09 Javascript
JavaScript实现点击按钮后变灰避免多次重复提交
Jul 15 Javascript
JQuery操作iframe父页面与子页面的元素与方法(实例讲解)
Nov 20 Javascript
JavaScript子类用Object.getPrototypeOf去调用父类方法解析
Dec 05 Javascript
jquery实现图片放大镜功能
Nov 23 Javascript
深入分析Javascript事件代理
Jan 30 Javascript
15款最好的Bootstrap在线编辑器
Aug 03 Javascript
微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换
Nov 25 Javascript
js实现下拉框效果(select)
Mar 28 Javascript
webpack4 css打包压缩问题的解决
May 18 Javascript
js实现随机数小游戏
Jun 28 Javascript
layui导出所有数据的例子
Sep 10 Javascript
微信小程序实现带放大效果的轮播图
May 26 #Javascript
vue实现图片上传功能
May 28 #Javascript
小程序实现图片移动缩放效果
May 26 #Javascript
jQuery实现的分页插件完整示例
May 26 #jQuery
js实现时间日期校验
May 26 #Javascript
Node.js API详解之 assert模块用法实例分析
May 26 #Javascript
Angular5整合富文本编辑器TinyMCE的方法(汉化+上传)
May 26 #Javascript
You might like
15种PHP Encoder的比较
2007/03/06 PHP
thinkPHP学习笔记之安装配置篇
2015/03/05 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
JS中不为人知的五种声明Number的方式简要概述
2013/02/22 Javascript
js操作checkbox遇到的问题解决
2013/06/29 Javascript
form表单只提交数据而不进行页面跳转的解决方案
2013/09/18 Javascript
Extjs改变树节点的勾选状态点击按钮将复选框去掉
2013/11/14 Javascript
使用js画图之正弦曲线
2015/01/12 Javascript
原生JS实现跑马灯效果
2017/02/20 Javascript
JS字符串统计操作示例【遍历,截取,输出,计算】
2017/03/27 Javascript
微信小程序 列表的上拉加载和下拉刷新的实现
2017/04/01 Javascript
微信小程序中使用javascript 回调函数
2017/05/11 Javascript
基于滚动条位置判断的简单实例
2017/12/14 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
Vue插值、表达式、分隔符、指令知识小结
2018/10/12 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
2018/12/14 Javascript
JavaScript HTML DOM元素 节点操作汇总
2019/07/29 Javascript
JavaScript实现图片伪异步上传过程解析
2020/04/10 Javascript
Vue scoped及deep使用方法解析
2020/08/01 Javascript
解决removeEventListener 无法清除监听的问题
2020/10/30 Javascript
解决vuex刷新数据消失问题
2020/11/12 Javascript
[01:20:38]完美世界DOTA2联赛 GXR vs IO 第一场 11.07
2020/11/09 DOTA
Python Gitlab Api 使用方法
2019/08/28 Python
如何在python中处理配置文件代码实例
2020/09/27 Python
selenium判断元素是否存在的两种方法小结
2020/12/07 Python
Python爬虫新手入门之初学lxml库
2020/12/20 Python
春秋航空官方网站:Spring Airlines
2017/09/27 全球购物
农田水利实习自我鉴定
2013/09/19 职场文书
大学自我鉴定范文
2013/12/26 职场文书
自动化职业生涯规划书范文
2014/01/03 职场文书
学习雷锋精神演讲稿
2014/05/10 职场文书
党的群众路线教育实践活动心得体会(企业)
2014/11/03 职场文书
服务整改报告
2014/11/06 职场文书
圆明园观后感
2015/06/03 职场文书
三十年同学聚会致辞
2015/07/28 职场文书
学生会任命书范本
2015/09/21 职场文书