微信小程序?qū)崿F(xiàn)文字從右向左無限滾動(dòng)
本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)文字無限滾動(dòng)的具體代碼,供大家參考,具體內(nèi)容如下
布局頁面wxml
<scroll-view class="container"> <view class="scrolltxt"> <view class="marquee_box"> <view class="marquee_text" style="transform: translateX(-{{marqueeDistance}}px)"> <text>{{text}}</text> <text style="margin-right:{{marquee_margin}}px;"></text> <text style="margin-right:{{marquee_margin}}px;">{{text}}</text> </view> </view> </view> </scroll-view>
樣式頁面 wxss
.container {height: 100%;display: flex;flex-direction: column;justify-content: space-between;box-sizing: border-box;} .scrolltxt{padding:0 20rpx;background:#f8f8f8;} .marquee_box {position:relative;color:#333;height:90rpx;display:block;overflow:hidden;} .marquee_text {white-space: nowrap;position:absolute;top:0;font-size:14px;height:90rpx;line-height:90rpx;}
小程序 js頁面
Page({ /** * 頁面的初始數(shù)據(jù) * Linyufan.com */ data: { text: "這是一條測(cè)試公告,看看效果怎么樣,2019年3月23日", marqueePace: 1,//滾動(dòng)速度 marqueeDistance: 0,//初始滾動(dòng)距離 marquee_margin: 30, size:14, interval: 20 // 時(shí)間間隔 }, /** * 生命周期函數(shù)--監(jiān)聽頁面加載 */ onLoad: function (options) { }, onShow: function () { var that = this; var length = that.data.text.length * that.data.size;//文字長(zhǎng)度 var windowWidth = wx.getSystemInfoSync().windowWidth;// 屏幕寬度 //console.log(length,windowWidth); that.setData({ length: length, windowWidth: windowWidth }); that.scrolltxt();// 第一個(gè)字消失后立即從右邊出現(xiàn) }, scrolltxt: function () { var that = this; var length = that.data.length;//滾動(dòng)文字的寬度 var windowWidth = that.data.windowWidth;//屏幕寬度 if (length > windowWidth){ var interval = setInterval(function () { var maxscrollwidth = length + that.data.marquee_margin;//滾動(dòng)的最大寬度,文字寬度+間距,如果需要一行文字滾完后再顯示第二行可以修改marquee_margin值等于windowWidth即可 var crentleft = that.data.marqueeDistance; if (crentleft < maxscrollwidth) {//判斷是否滾動(dòng)到最大寬度 that.setData({ marqueeDistance: crentleft + that.data.marqueePace }) } else { //console.log("替換"); that.setData({ marqueeDistance: 0 // 直接重新滾動(dòng) }); clearInterval(interval); that.scrolltxt(); } }, that.data.interval); } else{ that.setData({ marquee_margin:"1000"});//只顯示一條不滾動(dòng)右邊間距加大,防止重復(fù)顯示 } } })
為大家推薦現(xiàn)在關(guān)注度比較高的微信小程序教程一篇:《微信小程序開發(fā)教程》小編為大家精心整理的,希望喜歡。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
解析JavaScript實(shí)現(xiàn)DDoS攻擊原理與保護(hù)措施
本文主要對(duì)JavaScript實(shí)現(xiàn)DDoS攻擊原理與保護(hù)措施進(jìn)行介紹,具有一定的參考價(jià)值,需要的朋友一起來看下吧2016-12-12JavaScript常用數(shù)組去重的方法及對(duì)比詳解
數(shù)組去重在面試和工作中都是比較容易見到的問題。這篇文章主要是來測(cè)試多個(gè)方法,對(duì)下面這個(gè)數(shù)組的去重結(jié)果進(jìn)行分析討論,需要的可以參考一下2022-07-07微信小程序 仿美團(tuán)分類菜單 swiper分類菜單
本文主要介紹了微信小程序仿美團(tuán)分類菜單(swiper分類菜單)的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-04-04JavaScript編寫點(diǎn)擊查看大圖的頁面半透明遮罩層效果實(shí)例
這篇文章主要介紹了JavaScript制作點(diǎn)擊查看大圖的頁面遮罩層效果實(shí)例,透明部分這里使用的是CSS3的rgba,兼容性還是過得去的,需要的朋友可以參考下2016-05-05微信小程序中實(shí)現(xiàn)埋點(diǎn)的方法示例詳解
在小程序中實(shí)現(xiàn)埋點(diǎn)的基本思路是利用生命周期函數(shù)和事件回調(diào),插入數(shù)據(jù)上報(bào)代碼,下面將介紹如何在小程序中實(shí)現(xiàn)埋點(diǎn),并通過代碼示例進(jìn)行說明,感興趣的朋友一起看看吧2024-04-04JS實(shí)現(xiàn)讀取Excel文件內(nèi)容并生成二維碼
這篇文章主要為大家介紹了如何使用JavaScript實(shí)現(xiàn)讀取Excel文件內(nèi)容并生成二維碼下載到本地,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-04-04