微信小程序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 相关文章推荐
JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
Jan 06 Javascript
jQuery页面滚动浮动层智能定位实例代码
Aug 23 Javascript
jQuery实现的原图对比窗帘效果
Jun 15 Javascript
jQuery中last()方法用法实例
Jan 06 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
Jul 02 Javascript
sencha ext js 6 快速入门(必看)
Jun 01 Javascript
JavaScript对象创建模式实例汇总
Oct 03 Javascript
Vue实战之vue登录验证的实现代码
Oct 31 Javascript
浅谈vue单一组件下动态修改数据时的全部重渲染
Mar 01 Javascript
Vue条件循环判断+计算属性+绑定样式v-bind的实例
Sep 18 Javascript
微信小程序分享海报生成的实现方法
Dec 10 Javascript
javascript实现滚轮轮播图片
Dec 13 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 array_intersect()函数使用代码
2009/01/14 PHP
PHP Pear 安装及使用
2009/03/19 PHP
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
10条php编程小技巧
2015/07/07 PHP
PHP  实现等比压缩图片尺寸和大小实例代码
2016/10/08 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
2020/05/02 PHP
jQuery中将函数赋值给变量的调用方法
2012/03/23 Javascript
关于jQuery参考实例2.0 用jQuery选择元素
2013/04/07 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
jquery实现对联广告的方法
2015/02/05 Javascript
jQuery获得包含margin的outerWidth和outerHeight的方法
2015/03/25 Javascript
Angular.js回顾ng-app和ng-model使用技巧
2016/04/26 Javascript
bootstrap制作jsp页面(根据值让table显示选中)
2017/01/05 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
JavaScript实现前端实时搜索功能
2020/03/26 Javascript
原生js简单实现放大镜特效
2017/05/16 Javascript
浅谈 vue 中的 watcher
2017/12/04 Javascript
webpack 单独打包指定JS文件的方法
2018/02/22 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
2018/09/10 Javascript
nodejs基础之buffer缓冲区用法分析
2018/12/26 NodeJs
通过循环优化 JavaScript 程序
2019/06/24 Javascript
js如何验证密码强度
2020/03/18 Javascript
jquery实现简单每周轮换的日历
2020/09/10 jQuery
在vue项目中 实现定义全局变量 全局函数操作
2020/10/26 Javascript
python使用ctypes模块调用windowsapi获取系统版本示例
2014/04/17 Python
Python实现对excel文件列表值进行统计的方法
2015/07/25 Python
Python中循环后使用list.append()数据被覆盖问题的解决
2018/07/01 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
Python OpenCV实现视频分帧
2019/06/01 Python
浅谈Python协程
2020/06/17 Python
解决Pyinstaller打包软件失败的一个坑
2021/03/04 Python
新西兰床上用品和家居用品购物网站:Adairs
2018/04/27 全球购物
美容院店长岗位职责
2014/04/08 职场文书
2014年征兵标语
2014/06/20 职场文书
Python字典的基础操作
2021/11/01 Python
JavaScript中时间格式化新思路toLocaleString()
2021/11/07 Javascript