实现一个微信小程序组件:文字跑马灯效果
- 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
实现一个微信小程序组件:文字跑马灯效果的更多相关文章
- 微信小程序里实现跑马灯效果
在微信小程序 里实现跑马灯效果,类似滚动字幕或者滚动广告之类的,使用简单的CSS样式控制,没用到JS wxml: <!-- 复制的跑马灯效果 --> <view class=&quo ...
- 微信小程序实现文字跑马灯
wxml: <view>1 显示完后再显示</view> <view class="example"> <view class=" ...
- 微信小程序-实现文字跑马灯-wepy
百度蛮多例子的,但是代码太长懒得看了 前言 要实现跑马灯主要就是获得判断开始定界和结束定界, 1.9.3新增的wxml操作接口 就可以拿到节点长宽等属性,当然你也可以直接用 文字数量 * 文字大小(注 ...
- 微信小程序组件设计规范
微信小程序组件设计规范 组件化开发的思想贯穿着我开发设计过程的始终.在过去很长一段时间里,我都受益于这种思想. 组件可复用 - 减少了重复代码量 组件做为抽离的功能单元 - 方便维护 组件作为temp ...
- 微信小程序组件学习 -- 注册页面
微信小程序组件使用手册地址: 1. 百度搜索"微信公众平台",扫码登录之后,点击帮助文档里面的普通小程序. 2. 接着选择"开发"-->"组件& ...
- 如何快速地开发一个微信小程序
如何快速地开发一个微信小程序呢?我觉得作为初学者,最好能有一个模板,然后改这个模板. 同样作为初学者,刚开始的时候我有下面的几个问题,后来通过问同学,我弄清楚了. 微信小程序可以连接MySQL或者Sq ...
- 微信小程序 组件 Demo
文字跑马灯效果: http://www.wxapp-union.com/portal.php?mod=view&aid=1038 触摸水波涟漪效果: http://www.wx ...
- 微信小程序实现标签页滑块效果
微信小程序实现标签页滑块效果 小程序完整代码: wxml: <view class="swiper-tab"> <view class="swiper- ...
- Android开发:文本控件详解——TextView(二)文字跑马灯效果实现
一.需要使用的属性: 1.android:ellipsize 作用:若文字过长,控制该控件如何显示. 对于同样的文字“Android开发:文本控件详解——TextView(二)文字跑马灯效果实现”,不 ...
随机推荐
- 【OF框架】配置信息Config添加配置和代码调用api
一.配置规范 配置信息全部写在OF.WebShell项目文件config.json中 配置键使用OF.开头,配置格式如下: { "OF.IgnoredUrl": "log ...
- Windows——系统盘重置密码
一.制作好系统启动U盘 软碟通自己制作即可 二.这进入到安装前界面按Shift+F10调出命令提示符 三.输入regedit后按回车进入注册表编辑器 四. 左键单击选中HKEY_LOCAL_MACHI ...
- 无法访问此网站 ERR_CONTENT_DECODING_FAILED
这个错误挺少见的. 百度了下: 1,说是文件编码格式不正确: 2,说是Nginx的压缩和tomcat的压缩冲突了,关闭gzip压缩: 3,……………… 不管是哪一种情况,都是编码问题,所以逐一排查,根 ...
- 集合(python)
# -*- coding: utf-8 -*- class Array(object): def __init__(self, size=32, init=None): self._size = si ...
- IntelliJ IDEA lombok插件的安装和使用
IntelliJ IDEA是一款非常优秀的集成开发工具,功能强大,而且插件众多.lombok是开源的代码生成库,是一款非常实用的小工具,我们在编辑实体类时可以通过lombok注解减少getter.se ...
- 删除TOMCAT服务器上的文件
deleteFile(文件名称,路径名称); public boolean deleteFile(String filename,String filepath){ String path =Ser ...
- IAR平台移植TI OSAL到STC8A8K64S4A12单片机中
玩过TI 的ZigBee或者BLE的人,都会接触到OSAL.OSAL是什么?OSAL英文全称:operating system abstraction layer(操作系统抽象层).基于OSAL的调度 ...
- 微信小程序 post 请求获取不到参数原因
如果使用post 请求一定要加上 header: { "content-type": "application/x-www-form-urlencoded" } ...
- 原生JS实现简易随机点名功能
定时器的工作原理,这里将用引用How JavaScript Timers Work中的例子来解释定时器的工作原理,该图为一个简单版的原理图.· 上图中,左侧数字代表时间,单位毫秒:左侧文字代表某一个操 ...
- Bzoj 3673: 可持久化并查集 by zky(主席树+启发式合并)
3673: 可持久化并查集 by zky Time Limit: 5 Sec Memory Limit: 128 MB Description n个集合 m个操作 操作: 1 a b 合并a,b所在集 ...