中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

vue如何實現文字上下滾動跑馬燈效果

vue
小億
799
2023-08-07 19:57:12
欄目: 編程語言

要在Vue中實現文字上下滾動的跑馬燈效果,可以使用CSS和Vue的動態綁定來實現。

首先,在Vue組件中定義一個變量來保存要展示的文字內容。然后使用CSS樣式來創建滾動效果。

以下是一個簡單的示例:

<template>

  <div class="marquee-container">

    <div class="marquee" :style="{ top: position + 'px' }">{{ text }}</div>

  </div>

</template>

<script>

export default {

  data() {

    return {

      text: '這是一段要滾動的文字',

      position: 0,

      speed: 2, // 滾動速度,可根據需要調整

      timer: null

    };

  },

  mounted() {

    this.startMarquee();

  },

  beforeDestroy() {

    this.stopMarquee();

  },

  methods: {

    startMarquee() {

      this.timer = setInterval(() => {

        this.position -= this.speed;

        // 當文字完全滾出容器時,重置位置

        const containerHeight = this.$el.offsetHeight;

        const contentHeight = this.$refs.marquee.offsetHeight;

        if (Math.abs(this.position) >= contentHeight) {

          this.position = containerHeight;

        }

      }, 20);

    },

    stopMarquee() {

      clearInterval(this.timer);

    }

  }

};

</script>

<style>

.marquee-container {

  height: 50px; /* 容器高度,可根據需要調整 */

  overflow: hidden;

}

.marquee {

  position: relative;

  transition: top 0.2s linear;

}

</style>

在上面的例子中,使用marquee-container類定義了一個高度固定的容器。在容器內部,使用marquee類來包裹要滾動的文字內容。通過綁定:style屬性,將文字的位置與變量position關聯起來。

在mounted鉤子函數中,調用startMarquee方法來開始滾動效果。在beforeDestroy鉤子函數中,調用stopMarquee方法來停止滾動。

這樣,當組件被渲染時,文字就會以指定的速度從上往下滾動,并且當文字完全滾出容器后,會重新回到容器頂部重新開始滾動。你可以根據需要調整滾動速度、容器高度和其他樣式。


0
南城县| 宣汉县| 木兰县| 来凤县| 遂川县| 宝兴县| 耿马| 保定市| 曲靖市| 新泰市| 江川县| 镇平县| 新晃| 东兰县| 大港区| 晋宁县| 三江| 宝清县| 周口市| 丹巴县| 专栏| 大宁县| 乐陵市| 深圳市| 永胜县| 长汀县| 鹰潭市| 泗洪县| 邵武市| 菏泽市| 安远县| 资溪县| 南宫市| 同仁县| 肇庆市| 英超| 三台县| 太康县| 正宁县| 南阳市| 剑川县|