uni-app #插件讨论# uni-notice-bar 通告栏 - DCloud前端团队 滚动速度

发布于 1周前 作者 vueper 来自 Uni-App

uni-app #插件讨论# uni-notice-bar 通告栏 - DCloud前端团队 滚动速度

怎么稳定滚动速度 现在文字越多滚动速度越快 文字越少速度越慢 我想匀速实现 这个能实现吗

4 回复

这是是匀速的,如果你在h5端测试,修改了文字记得刷新一下


修改文字后速度不匹配的bug我已经修复,更新插件后即可看到效果

你是通过动态绑定text的方式在修改text的时候复现了这个问题吗

uni-notice-bar 是 uni-app 提供的一个通告栏组件,通常用于显示滚动的通知或公告信息。关于 uni-notice-bar 的滚动速度,目前官方文档中并没有直接提供调整滚动速度的属性或方法。不过,你可以通过一些间接的方式来控制滚动速度。

1. 使用 scrollable 属性

uni-notice-bar 组件有一个 scrollable 属性,用于控制是否开启滚动。默认情况下,scrollabletrue,表示开启滚动。如果你希望控制滚动速度,可以通过调整 scrollable 属性来实现。

<uni-notice-bar :scrollable="true" text="这是一条滚动的通知"></uni-notice-bar>

2. 自定义样式

你可以通过自定义 CSS 样式来间接影响滚动速度。例如,通过调整 animation-duration 来控制滚动的速度。

<template>
  <view class="custom-notice-bar">
    <uni-notice-bar :scrollable="true" text="这是一条滚动的通知"></uni-notice-bar>
  </view>
</template>

<style>
.custom-notice-bar .uni-notice-bar__content {
  animation-duration: 10s; /* 调整滚动速度 */
}
</style>

3. 使用 setTimeoutsetInterval

如果你需要更精确地控制滚动速度,可以通过 JavaScript 的 setTimeoutsetInterval 来手动控制滚动行为。

<template>
  <view>
    <uni-notice-bar ref="noticeBar" :scrollable="false" text="这是一条滚动的通知"></uni-notice-bar>
  </view>
</template>

<script>
export default {
  mounted() {
    this.startScrolling();
  },
  methods: {
    startScrolling() {
      const noticeBar = this.$refs.noticeBar;
      let position = 0;
      setInterval(() => {
        position -= 1; // 调整滚动速度
        noticeBar.$el.style.transform = `translateX(${position}px)`;
      }, 50); // 调整滚动间隔
    }
  }
}
</script>
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!