这期内容当中小编将会给大家带来有关怎么在微信小程序中使用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); }) } })
上述就是小编为大家分享的怎么在微信小程序中使用scroll-view实现字幕滚动效果了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。