最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

在微信小程序中如何实现文字跑马灯效果

来源:动视网 责编:小OO 时间:2020-11-27 19:39:31
文档

在微信小程序中如何实现文字跑马灯效果

本文实例为大家分享了微信小程序实现文字跑马灯的具体代码,供大家参考,具体内容如下:效果;wxml;<;view>;1 显示完后再显示<;/view>;<;view class=";example";>;<;view class=";marquee_box";>;<;view class=";marquee_text";style=";{{orientation}}:{{marqueeDistance}}px;font-size: {{size}}px;";>;{{text}} <;/view>;<;/view>;<;/view>;<;<。
推荐度:
导读本文实例为大家分享了微信小程序实现文字跑马灯的具体代码,供大家参考,具体内容如下:效果;wxml;<;view>;1 显示完后再显示<;/view>;<;view class=";example";>;<;view class=";marquee_box";>;<;view class=";marquee_text";style=";{{orientation}}:{{marqueeDistance}}px;font-size: {{size}}px;";>;{{text}} <;/view>;<;/view>;<;/view>;<;<。
 这篇文章主要为大家详细介绍了微信小程序实现文字跑马灯效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

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

效果

wxml

<view>1 显示完后再显示</view>
<view class="example">
 <view class="marquee_box">
 <view class="marquee_text" style="{{orientation}}:{{marqueeDistance}}px;font-size: {{size}}px;">
 {{text}}
 </view>
 </view>
</view>
<view>2 出现白边后即显示</view>
<view class="example">
 <view class="marquee_box">
 <view class="marquee_text" style="{{orientation}}:{{marqueeDistance2}}px;font-size: {{size}}px;">
 <text>{{text}}</text>
 <text wx:if="{{marquee2copy_status}}" style="margin-left:{{marquee2_margin}}px;">{{text}}</text>
 </view>
 </view>
</view>

wxss

.example {
 display: block;
 width: 100%;
 height: 100rpx;
}

.marquee_box {
 width: 100%;
 position: relative;
}

.marquee_text {
 white-space: nowrap;
 position: absolute;
 top: 0;
}

js

// pages/home/marquee/marquee.js
Page({
 data: {
 text: '这是一条会滚动的文字滚来滚去的文字跑马灯,哈哈哈哈哈哈哈哈',
 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);
 }
})

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

在javascript中如何实现最长公共子序列

在Node.js中如何获取文件上传进度?

为什么Node.js会成为Web应用开发?

文档

在微信小程序中如何实现文字跑马灯效果

本文实例为大家分享了微信小程序实现文字跑马灯的具体代码,供大家参考,具体内容如下:效果;wxml;<;view>;1 显示完后再显示<;/view>;<;view class=";example";>;<;view class=";marquee_box";>;<;view class=";marquee_text";style=";{{orientation}}:{{marqueeDistance}}px;font-size: {{size}}px;";>;{{text}} <;/view>;<;/view>;<;/view>;<;<。
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top