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

wxml:

显示完后再显示:

{{text}}

出现白边后即显示:

{{text}}

{{text}}

wxss:

.example {

display: block;

width: 100%;

height: 100rpx;

}

.box {

width: 100%;

position: relative;

}

.text {

white-space: nowrap;

position: absolute;

top: 0;

}

js:

Page({

data: {

text: '滚动文本1234567890abcdefghijklmnopqrstuvmxyz',

marqueePace: 1, //滚动速度

marqueeDistance: 0, //初始滚动距离

marqueeDistance2: 0,

marquee2copy_status: false,

marquee2_margin: 60,

size: 14,

orientation: 'left', //滚动方向

interval: 20 // 时间间隔

},

onShow: function() {

// 页面显示

var vm = this;

var length = vm.data.text.length * vm.data.size; //文字长度

var windowWidth = wx.getSystemInfoSync().windowWidth; // 屏幕宽度

vm.setData({

length: length,

windowWidth: windowWidth,

marquee2_margin: length < windowWidth ? windowWidth - length : vm.data.marquee2_margin //当文字长度小于屏幕长度时,需要增加补白

});

vm.run1(); // 水平一行字滚动完了再按照原来的方向滚动

vm.run2(); // 第一个字消失后立即从右边出现

},

run1: function() {

var vm = this;

var interval = setInterval(function() {

if (-vm.data.marqueeDistance < vm.data.length) {

vm.setData({

marqueeDistance: vm.data.marqueeDistance - vm.data.marqueePace,

});

} else {

clearInterval(interval);

vm.setData({

marqueeDistance: vm.data.windowWidth

});

vm.run1();

}

}, vm.data.interval);

},

run2: function() {

var vm = this;

var interval = setInterval(function() {

if (-vm.data.marqueeDistance2 < vm.data.length) {

// 如果文字滚动到出现marquee2_margin=30px的白边,就接着显示

vm.setData({

marqueeDistance2: vm.data.marqueeDistance2 - vm.data.marqueePace,

marquee2copy_status: vm.data.length + vm.data.marqueeDistance2 <= vm.data.windowWidth + vm.data.marquee2_margin,

});

} else {

if (-vm.data.marqueeDistance2 >= vm.data.marquee2_margin) { // 当第二条文字滚动到最左边时

vm.setData({

marqueeDistance2: vm.data.marquee2_margin // 直接重新滚动

});

clearInterval(interval);

vm.run2();

} else {

clearInterval(interval);

vm.setData({

marqueeDistance2: -vm.data.windowWidth

});

vm.run2();

}

}

}, vm.data.interval);

}

})

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

小程序如何做成html的滚动字幕,微信小程序实现文字滚动相关推荐

  1. 数字滚动(微信小程序)

    数字滚动(微信小程序) 微信小程序使用数字滚动的功能,引用了外部的包 WxCountUp.js 页面使用: countup.wxml <view class="page"&g ...

  2. 微信小程序周报(第十期)-微信小程序联盟

    每周一笑 程序猿:我的第一个问题是,对于我第二个和第三个问题,你可不可以只用'能'和'不能'来回答? 老板:"OK!" 我的第二个问题是,如果我的第三个问题是我能不能涨工资?那么你 ...

  3. AI拍照识物,区分垃圾分类,还可以通过垃圾分类小游戏强化自己的知识点。通过微信小程序实现

    图像识别技术在垃圾分类中的应用,借助于目前AI技术的发达,可以直接使用拍照并识别图中的物品是什么,然后调用垃圾分类知识的api接口查询这个物品属于什么垃圾. 除了可以拍照快速识别垃圾以外,我们还在这个 ...

  4. python操作微信小程序云端数据库_微信小程序·云开发云数据库的基本使用-微信小程序云开发实例-腾讯云微信小程序...

    微信小程序·云开发云数据库的基本使用-微信小程序云开发实例-腾讯云微信小程序 浏览量:1120 时间:2020-04-06

  5. php微信小程序多图上传,tp5实现微信小程序多图片上传到服务器功能

    最近在做一个教育类的小商城的微信小程序,用到了上传多个图片文件到服务器端,这里做一个讲解,希望对大家有所帮助. 1,小程序端: 在wxml文件中: 删除 点击上传作业 在js文件中: Page({ / ...

  6. 小程序源码:宝宝起名神器微信小程序源码下载-多玩法安装简单

    这款小程序支持输入姓氏自动起名,不满意还可以点击换一换来找到满意的 支持起两个字或者三个字的名字 另外小编也给该款小程序添加了几个流量给大家 下面就来看看小编的测试演示图吧! 小程序源码下载地址:小程 ...

  7. 微信小程序怎么添加到主屏幕将微信小程序放到手机桌面?

    微信小程序在一些场景下使用还是非常方便,如果遇到需要经常使用的微信小程序,将该微信小程序添加到手机桌面上,下次直接点击打开将更方便. 例如:草柴微信小程序很多人每天都在用免费领取美团外卖红包优惠券.饿 ...

  8. 微信小程序怎么开通(自己申请开通微信小程序的方法)

    微信小程序怎么开通(自己申请开通微信小程序的方法) 很多粉丝朋友想要了解微信小程序怎么开通,自己想要申请开发同微信小程序.本文瀚林就给大家分享自己开通微信小程序的方法. 在操作之前,首先要大家清楚明白 ...

  9. 小程序也能接广告了,微信小程序广告位投放指南!

    小程序也能接广告了,微信小程序广告位投放指南! 3月15日消息,据爆料,微信已经开始秘密测试在小程序中投放广告,并且流传出了一份<微信小程序广告位投放指引>,意味着微信小程序已经准备开启广 ...

最新文章

  1. 中国系统集成商名单大全
  2. 移动端安卓IOS系统判断,用js判断 iPhone6 iPhone6 plus iphonex?
  3. 修改centos6.5的时区
  4. 中根遍历二叉查找树所得序列一定是有序序列_学习数据结构--第六章:查找(查找)
  5. 基于ARM的非特定人语音识别系统设计
  6. python代码评测结果tle_比比谁的代码短:TLE测试赛结束
  7. spring.net学习(一) 搭建环境,实例化spring.net容器。
  8. spark源码阅读之network(2)
  9. 安卓学习专栏——实现记住密码功能(图文+代码)
  10. 视频教程-Visio应用视频教程(下)-Office/WPS
  11. JAVA jdk8安装
  12. 打印机显示服务器磁盘已满,打印机无法打印显示内存已满是怎么回事,怎么解决?...
  13. 洛谷P1101 单词方阵
  14. 加一行代码,让你的Python的运算速度加快100倍
  15. 回撤率 python_回的解释|回的意思|汉典“回”字的基本解释
  16. 多领域常见的一种NB-IoT温湿度传感器
  17. C# windowsService安装
  18. 关于游戏买量系统的业务模块简单划分
  19. ElasticSearch中的中文分词详解
  20. 架构设计第五讲:数据巡检系统的设计与应用

热门文章

  1. git 入门(问道学院)
  2. 跨国并购捷径,中国企业欲在车联网领域弯道超车
  3. s()++php,.phps(dotphps)文件类型以及MIME类型详细描述
  4. 攻击工具SYN Flood的源代码
  5. Udacity 机器学习笔记1
  6. 如何参与Linux内核社区开发
  7. 网络分流器的分类?网络分流器的主要用途?
  8. 微信读书APP协议阅读 2021-2-26
  9. 【前端】你好,我叫TypeScript 02──变量与接口
  10. 循迹小车计数显示模块设计