• marquee.json
{
"component": true,
"usingComponents": {}
}
  • marquee.wxml
<!--components/marquee.wxml-->
<view class='marquee_container'>
<view class='marquee_text' style='{{ orientation }}:{{ marqueeDistance }}px;font-size: {{size}}px;'>
{{ text }}
</view>
</view>
  • marquee.wxss
/* components/marquee.wxss */
.marquee_container {
position: relative;
width: 100%;
} .marquee_text {
position: absolute;
white-space: nowrap;
top:;
}
  • marquee
// components/marquee.js
Component({
/**
* 组件的属性列表
*/
properties: {
text: {
type: String,
value: 'ILoveEwei'
}
}, /**
* 组件的初始数据
*/
data: {
marqueePace: 1,
marqueeDistance: 0,
size: 14,
orientation: 'left',
interval: 20
}, /**
* 组件的方法列表
*/
methods: {
_scrolling: function() {
var _this = this;
var timer = setInterval(()=> {
if(-_this.data.marqueeDistance < _this.data.length) {
_this.setData({
marqueeDistance: _this.data.marqueeDistance - _this.data.marqueePace
})
} else {
clearInterval(timer);
_this.setData({
marqueeDistance: _this.data.windowWidth
});
_this._scrolling();
}
},_this.data.interval);
}
}, created: function() {
var _this = this;
var length = _this.data.text.length * _this.data.size;
var windowWidth = wx.getSystemInfoSync().windowWidth
_this.setData({
length: length,
windowWidth: windowWidth
});
_this._scrolling();
}
})

以上就是我定义在components文件夹的组件,剩下就是引用组件

  • demo.json
{
"usingComponents": {
"marquee": "../../components/marquee"
}
}
  • demo.wxml
<marquee text="我爱你我爱你我爱你"></marquee>  

转 : https://www.jianshu.com/p/0ff03e5e942e

实现一个微信小程序组件:文字跑马灯效果的更多相关文章

  1. 微信小程序里实现跑马灯效果

    在微信小程序 里实现跑马灯效果,类似滚动字幕或者滚动广告之类的,使用简单的CSS样式控制,没用到JS wxml: <!-- 复制的跑马灯效果 --> <view class=&quo ...

  2. 微信小程序实现文字跑马灯

    wxml: <view>1 显示完后再显示</view> <view class="example"> <view class=" ...

  3. 微信小程序-实现文字跑马灯-wepy

    百度蛮多例子的,但是代码太长懒得看了 前言 要实现跑马灯主要就是获得判断开始定界和结束定界, 1.9.3新增的wxml操作接口 就可以拿到节点长宽等属性,当然你也可以直接用 文字数量 * 文字大小(注 ...

  4. 微信小程序组件设计规范

    微信小程序组件设计规范 组件化开发的思想贯穿着我开发设计过程的始终.在过去很长一段时间里,我都受益于这种思想. 组件可复用 - 减少了重复代码量 组件做为抽离的功能单元 - 方便维护 组件作为temp ...

  5. 微信小程序组件学习 -- 注册页面

    微信小程序组件使用手册地址: 1. 百度搜索"微信公众平台",扫码登录之后,点击帮助文档里面的普通小程序. 2. 接着选择"开发"-->"组件& ...

  6. 如何快速地开发一个微信小程序

    如何快速地开发一个微信小程序呢?我觉得作为初学者,最好能有一个模板,然后改这个模板. 同样作为初学者,刚开始的时候我有下面的几个问题,后来通过问同学,我弄清楚了. 微信小程序可以连接MySQL或者Sq ...

  7. 微信小程序 组件 Demo

    文字跑马灯效果:       http://www.wxapp-union.com/portal.php?mod=view&aid=1038 触摸水波涟漪效果:   http://www.wx ...

  8. 微信小程序实现标签页滑块效果

    微信小程序实现标签页滑块效果 小程序完整代码: wxml: <view class="swiper-tab"> <view class="swiper- ...

  9. Android开发:文本控件详解——TextView(二)文字跑马灯效果实现

    一.需要使用的属性: 1.android:ellipsize 作用:若文字过长,控制该控件如何显示. 对于同样的文字“Android开发:文本控件详解——TextView(二)文字跑马灯效果实现”,不 ...

随机推荐

  1. ELK文档--ELK简介

    请参考:http://www.cnblogs.com/aresxin/p/8035137.html

  2. Python函数Day3

    一.函数名的应用 函数名类似于特殊的变量,打印函数名就是打印函数的内存地址 ① 函数名就是函数的内存地址 def func(): pass >>>func <function ...

  3. null和空的区别

    python中None和Null的区别 首先了解python对象的概念 python中,万物皆对象,所有的操作都是针对对象的. 那什么是对象?5是一个int对象,‘oblong’是一个str对象,异常 ...

  4. C++——构造函数 constructor

    What is constructor C++中,如果你想要创建一个object,有一个函数会自动被调用(不需要programmer显式调用 ),这个函数就是constructor; construc ...

  5. JDK环境变量配置linux

    安装前先查看是否安装过jdk如果安装过则 卸载 1. 确定JDK的版本: rpm -qa | grep jdk rpm -qa | grep gcj 可能的结果是: libgcj-4.1.2-42.e ...

  6. Using Microsoft Visual C++ DLLs with C++Builder

    Using Microsoft Visual C++ DLLs with C++Builder As powerful as C++Builder is, the majority of DLLs d ...

  7. 0019SpringBoot使用异步任务(多线程)与定时任务

    SpringBoot开启异步任务只需要两步配置: 1.在主类上加上注解@EnableAsync开启异步功能 2.在service层的方法上加上注解@Async指定调用方法时是异步的 SpringBoo ...

  8. window.frameElement

    地址:MDN web docs 比如有一个iframe的src是xxx.htmframeElement的作用就是在xxx.htm中获得这个引用它的iframe objet这样你就可以在xxx.htm改 ...

  9. vscode源码启动时需要的electron缓存位置

    C:\Users\Administrator\AppData\Local\Temp\gulp-electron-cache 可以把下好的electron release直接放到这个目录,就不用重新下了 ...

  10. javascript权威指南第12章DOM2 DOM3 示例代码

    <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> Example XHTML ...