当前位置:首页 > VUE

vue实现文字抖动

2026-02-19 05:57:51VUE

Vue 实现文字抖动效果

在 Vue 中实现文字抖动效果可以通过 CSS 动画或 JavaScript 动态控制样式。以下是几种实现方法:

使用 CSS 动画

定义关键帧动画并应用到文本元素上:

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
  20%, 40%, 60%, 80% { transform: translateX(5px); }
}

.shake-text {
  animation: shake 0.5s infinite;
}

在 Vue 模板中使用:

vue实现文字抖动

<template>
  <div class="shake-text">抖动的文字</div>
</template>

动态控制 CSS 类

通过 Vue 的响应式特性动态添加/移除抖动类:

<template>
  <div :class="{ 'shake-text': isShaking }">点击抖动</div>
  <button @click="toggleShake">切换抖动</button>
</template>

<script>
export default {
  data() {
    return {
      isShaking: false
    }
  },
  methods: {
    toggleShake() {
      this.isShaking = !this.isShaking
    }
  }
}
</script>

使用第三方动画库

安装 animate.css 库:

vue实现文字抖动

npm install animate.css

在 Vue 项目中引入并使用:

<template>
  <div class="animate__animated animate__shakeX animate__infinite">专业抖动效果</div>
</template>

<script>
import 'animate.css'
export default {}
</script>

自定义 JavaScript 实现

通过 ref 操作 DOM 实现更复杂的抖动:

<template>
  <div ref="shakingText" @click="startShake">点击开始抖动</div>
</template>

<script>
export default {
  methods: {
    startShake() {
      const element = this.$refs.shakingText
      let position = 0
      const interval = setInterval(() => {
        position = position === 0 ? 5 : -5
        element.style.transform = `translateX(${position}px)`
      }, 50)

      setTimeout(() => {
        clearInterval(interval)
        element.style.transform = 'translateX(0)'
      }, 1000)
    }
  }
}
</script>

这些方法可以根据实际需求选择使用,CSS 动画方案性能更好,JavaScript 方案控制更灵活。

标签: 文字vue
分享给朋友:

相关文章

vue原型实现

vue原型实现

Vue 原型实现的关键点 Vue.js 的原型系统是其响应式机制的核心部分,通过原型链实现数据的动态绑定和依赖收集。以下是实现 Vue 原型的主要技术要点。 数据响应式原理 Vue 通过 Obje…

vue实现翻译

vue实现翻译

Vue 实现翻译功能的方法 使用 i18n 插件实现多语言切换 安装 vue-i18n 插件: npm install vue-i18n 创建语言资源文件(如 en.json 和 zh.json)…

vue 实现拖动

vue 实现拖动

Vue 实现拖动的几种方法 在Vue中实现拖动功能可以通过多种方式,包括原生HTML5的拖放API、第三方库如vuedraggable等。以下是几种常见的实现方法: 使用HTML5拖放API HT…

vue 实现注册

vue 实现注册

Vue 实现注册功能 注册功能通常包括表单验证、数据提交和用户反馈。以下是实现注册功能的步骤: 1. 创建注册表单组件 在 Vue 项目中创建一个注册表单组件,包含用户名、邮箱、密码等输入字段。…

vue实现动画

vue实现动画

Vue 实现动画的方法 Vue 提供了多种方式来实现动画效果,包括内置的过渡系统、第三方动画库以及直接操作 CSS 或 JavaScript 动画。 使用 Vue 内置过渡系统 Vue 的 <…

vue实现定时

vue实现定时

Vue 实现定时功能的方法 使用 setInterval 和 clearInterval 在 Vue 中可以通过 setInterval 和 clearInterval 实现定时功能。在组件的 mou…