当前位置:首页 > 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 模板中使用:

<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 库:

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 实现更复杂的抖动:

vue实现文字抖动

<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中实现下拉框的删除功能通常涉及以下步骤: 数据绑定与渲染 在Vue组件中定义数据数组用于存储下拉框选项: data() { return { op…

vue实现递归

vue实现递归

Vue 实现递归组件的方法 在 Vue 中实现递归组件通常用于处理树形结构数据(如菜单、评论列表、文件目录等)。以下是具体实现方法: 定义递归组件 通过 name 选项让组件可以递归调用自身: &…

vue实现ios

vue实现ios

Vue 实现 iOS 风格应用 使用 Vue 实现 iOS 风格的应用,可以通过结合 UI 框架和自定义样式来达成目标。以下是具体方法和步骤: 选择 iOS 风格的 UI 框架 Vue 生态中有多…

vue实现波形

vue实现波形

实现波形效果的方法 在Vue中实现波形效果可以通过多种方式完成,常见的方法包括使用Canvas绘制、CSS动画或第三方库。以下是几种实现方案: 使用Canvas绘制波形 通过Canvas API动态…

vue实现注销

vue实现注销

实现用户注销功能 在Vue应用中实现用户注销功能通常涉及清除用户会话、重置应用状态并跳转到登录页面。以下是具体实现方法: 清除用户认证信息 使用Vuex或Pinia管理用户状态时,需在注销时重置存储…

vue核心实现

vue核心实现

Vue 核心实现原理 Vue.js 的核心实现主要包括响应式系统、虚拟 DOM、模板编译和组件化机制。以下是关键实现原理的详细说明: 响应式系统 Vue 使用 Object.defineProper…