欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

原生小程序封裝跑馬燈效果

 更新時(shí)間:2020年10月21日 10:30:26   作者:Lucky伯爵  
這篇文章主要為大家詳細(xì)介紹了原生小程序封裝跑馬燈效果,由多條銜接改動(dòng)得到,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了小程序封裝跑馬燈效果的具體代碼,供大家參考,具體內(nèi)容如下

Marquee.wxml

<view class="marquee_container " style="background:{{broadcast_arr.back_color}};font-size:32rpx;">
 <view class='marquee_text' style='--marqueeWidth--:{{-broadcast_arr.width_mal}}px;--speed--:{{broadcast_arr.time}}s;width:{{broadcast_arr.width_mal}}px;'>
 <block wx:for="{{data}}" wx:key='index'>
 <view style='color:{{broadcast_arr.text_color}};margin-left:{{index!=0?item.starspos*2:0}}rpx;'>
 {{item.img}}
 </view>
 </block>
 </view>
</view>

Marquee.wxss

@keyframes around {
 from {
 margin-left: 100%;
 }

 to {
 margin-left: var(--marqueeWidth--);
 }
}

.marquee_container {
 /* background-color: #0099FF; */
 padding: 12rpx 0;
 position: relative;
 width: 100%;
 /* height: 50rpx; */

}

.marquee_text {
 display: flex;
 white-space: nowrap;
 animation-name: around;
 animation-duration: var(--speed--);
 animation-iteration-count: infinite;
 animation-timing-function: linear;
 line-height: 50rpx;
}

.marquee_tit {
 height: 50rpx;
 line-height: 50rpx;
 position: absolute;
 padding-left: 22rpx;
}

Marquee.js

Component({
 options: {
 multipleSlots: true // 在組件定義時(shí)的選項(xiàng)中啟用多slot支持
 },
 properties: {
 title: {   // 屬性名
  type: String,  // 類型(必填),目前接受的類型包括:String, Number, Boolean, Object, Array, null(表示任意類型)
  value: '標(biāo)題' , // 屬性初始值(可選),如果未指定則會(huì)根據(jù)類型選擇一個(gè)
  observer: function (newVal) {
  this.setData({
   'data[0].img': newVal
  })
  this.run()
  }
 }
 },
 data: {
 data: [
  {
  img: "",
  }
 ],
 broadcast_arr: {
  speed: 5, //滾動(dòng)速度,每秒5個(gè)字
  font_size: "16", //字體大小(px)
  text_color: "#de8c17", //字體顏色
  back_color: "#fffbe8", //背景色
 }
 },

 /**
 * 生命周期函數(shù)--監(jiān)聽頁面加載
 */
 methods: {
 run() {
  let ititdata = this.data.data,
  assist = this.data.broadcast_arr,
  this_width = 0,
  spacing = 0,
  speed = (this.data.broadcast_arr.speed * this.data.broadcast_arr.font_size); //m每秒行走的距離

  for (let i in ititdata) {
  ititdata[i].starspos = wx.getSystemInfoSync().windowWidth; //以取屏幕寬度為間距
  this_width += (ititdata[i].img.length-12) * this.data.broadcast_arr.font_size;
  if (i != ititdata.length - 1) {
   spacing += ititdata[i].starspos
  }
  }
  let total_length = this_width + spacing;//總長
  assist.time = total_length / speed; /**滾動(dòng)時(shí)間*/
  assist.width_mal = total_length;
  this.setData({
  broadcast_arr: assist,
  data: ititdata
  })
 }
 }
})

index引入—index.json

{
 "usingComponents": {
 "marquee":"/components/Marquee/Marquee"
 },

index.wxml

<!--跑馬燈 Linyufan.com-->
 <marquee id='marquee' title='江龍:每日惠自提店鋪特價(jià)啦~店鋪特價(jià)啦~店鋪特價(jià)啦~'></marquee>
<!--跑馬燈-->

index.js

onReady:function(){
 this.marquee=this.selectComponent('#marquee')
 this.marquee.run()
 },

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論