微信小程序scroll-view实现字幕滚动


Posted in Javascript onJuly 14, 2018

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

需求:

实现框内的文字自下而上的自动循环滚动。

解决方案:

demo:字幕滚动

通过控制滑动条来完成字幕滚动,通过setinterval完成字幕循环滚动。

wxml:

<scroll-view class="container" scroll-y="true" bindscroll="scroll" scroll-top="{{scrollTop}}">
 <view class='list'>
 <view class='blank'></view>
 <view>
 <text class="txt-light">09:08</text> 很多人的一生,基本都是自己跟别人较劲,比如别人对自己的期待,比如把别人看得太重把自己看得太轻。其实一个人最应该考虑的问题是,自己如何与自己相处,比如人去楼空的时候如何照顾好自己的孤独,比如夜深人静的时候如何跟心灵沟通。自己跟自己能和谐共处,自己跟别人就能相安无事。
 </view>
 <view>
 <text class="txt-light">19:08</text> 平和是待人处事的一种态度,也是做人酌一种美德。平和既是一种修养,又是一种工作方法。平和的人,从不被忙碌所萦绕,闲时吃紧,忙里悠闲。待人不严,教人勿高。宽严得宜,分寸得体。身心自在,能享受生活之乐趣。平和的人生,是和谐的人生,健康的人生。
 </view>
 <view class='blank'></view>
 </view>
</scroll-view>

wxss:

.container {
 background-color: #FAEBD7;
 height: 150rpx;
}
 
.txt-light {
 color: #acadbe;
}
 
.blank {
 height: 150rpx;
}

js

Page({
 
 /**
 * 页面的初始数据
 */
 data: {
 scrollTop:0
 },
 
 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function (options) {
 
 },
 
 /**
 * 生命周期函数--监听页面初次渲染完成
 */
 onReady: function () {
 
 },
 
 /**
 * 生命周期函数--监听页面显示
 */
 onShow: function () {
 // 获取scroll-view的节点信息
 //创建节点选择器
 var query = wx.createSelectorQuery();
 query.select('.container').boundingClientRect()
 query.select('.list').boundingClientRect()
 query.exec((res) => {
 var containerHeight = res[0].height;
 var listHeight = res[1].height;
 
 // 滚动条的高度增加
 var interval = setInterval(() => {
 if (this.data.scrollTop < listHeight - containerHeight) {
  this.setData({
  scrollTop: this.data.scrollTop + 10
  })
 } else {
  // clearInterval(interval);
  this.setData({
  scrollTop: 0
  })
 }
 }, 1000)
 })
 
 },
 scroll: function () {
 // 获取scroll-view的节点信息
 //创建节点选择器
 var query = wx.createSelectorQuery();
 query.select('.list').boundingClientRect()
 query.exec((res) => {
 this.setData({
 scrollTop: -(res[0].top)
 })
 // console.log(res);
 })
 }
})

tips:此次字幕滚动,即可自动滚动,也可拖动。

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

Javascript 相关文章推荐
javascript mouseover、mouseout停止事件冒泡的解决方案
Apr 07 Javascript
JQuery 拾色器插件发布-jquery.icolor.js
Oct 20 Javascript
jQuery中$.fn的用法示例介绍
Nov 05 Javascript
javascript递归回溯法解八皇后问题
Apr 22 Javascript
解决JS无法调用Controller问题的方法
Dec 31 Javascript
angularjs实现文字上下无缝滚动特效代码
Sep 04 Javascript
EasyUI学习之Combobox下拉列表(1)
Dec 29 Javascript
Vue Spa切换页面时更改标题的实例代码
Jul 15 Javascript
node.js实现微信JS-API封装接口的示例代码
Sep 06 Javascript
详解关于Vue版本不匹配问题(Vue packages version mismatch)
Sep 17 Javascript
vue+elementUi图片上传组件使用详解
Aug 20 Javascript
JavaScript实现4位随机验证码的生成
Jan 28 Javascript
微信小程序仿RadioGroup改变样式的处理方案
Jul 13 #Javascript
通过封装scroll.js 获取滚动条的值
Jul 13 #Javascript
详解vue.js根据不同环境(正式、测试)打包到不同目录
Jul 13 #Javascript
Angular5.0 子组件通过service传递值给父组件的方法
Jul 13 #Javascript
vue实现组件之间传值功能示例
Jul 13 #Javascript
微信小程序仿微信运动步数排行(交互)
Jul 13 #Javascript
jQuery实现监听下拉框选中内容发生改变操作示例
Jul 13 #jQuery
You might like
如何在PHP中使用Oracle数据库(2)
2006/10/09 PHP
PHP 服务器配置(使用Apache及IIS两种方法)
2009/06/01 PHP
PHP教程 基本语法
2009/10/23 PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
2013/06/18 PHP
深入理解PHP内核(一)
2015/11/10 PHP
win平台安装配置Nginx+php+mysql 环境
2016/01/12 PHP
PHP类与对象后期静态绑定操作实例详解
2018/12/20 PHP
PHP7 echo和print语句实例用法
2019/02/15 PHP
jquery 双色表格实现代码
2009/12/08 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
2013/01/23 Javascript
Javascript基础知识(三)BOM,DOM总结
2014/09/29 Javascript
微信小程序 less文件编译成wxss文件实现办法
2016/12/05 Javascript
JS实现汉字与Unicode码相互转换的方法详解
2017/04/28 Javascript
Angularjs 双向绑定时字符串的转换成数字类型的问题
2017/06/12 Javascript
bootstrap fileinput实现文件上传功能
2017/08/23 Javascript
快速解决select2在bootstrap模态框中下拉框隐藏的问题
2018/08/10 Javascript
Vue 构造选项 - 进阶使用说明
2020/08/14 Javascript
js面试题之异步问题的深入理解
2020/09/20 Javascript
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
[41:17]VG vs Optic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python base64 decode incorrect padding错误解决方法
2015/01/08 Python
python学生信息管理系统(初级版)
2018/10/17 Python
使用Filter过滤python中的日志输出的实现方法
2019/07/17 Python
Python实现生成密码字典的方法示例
2019/09/02 Python
python 扩展print打印文件路径和当前时间信息的实例代码
2019/10/11 Python
使用python求解二次规划的问题
2020/02/29 Python
超全Python图像处理讲解(多模块实现)
2020/04/13 Python
HTML5中input输入框默认提示文字向左向右移动的示例代码
2020/09/10 HTML / CSS
阿姆斯特丹杜莎夫人蜡像馆官方网站:Madame Tussauds Amsterdam
2019/03/12 全球购物
Tomcat中怎么使用log4j输出所有的log
2016/07/07 面试题
军训自我鉴定100字
2014/02/13 职场文书
环境保护建议书
2014/08/26 职场文书
团队会宣传标语
2014/10/09 职场文书
年度考核个人总结
2015/03/06 职场文书
JS数组的常用方法整理
2021/03/31 Javascript
Python列表的索引与切片
2022/04/07 Python