当前位置:首页 > VUE

vue 实现跳动爱心

2026-01-15 03:51:03VUE

实现跳动爱心的Vue代码示例

在Vue中实现跳动爱心效果,可以通过CSS动画和Vue的动态绑定结合完成。以下是具体实现方式:

基础HTML结构

<template>
  <div class="heart-container">
    <div 
      class="heart" 
      :style="{ transform: `scale(${scale})` }"
      @click="beatHeart"
    ></div>
  </div>
</template>

Vue组件脚本

<script>
export default {
  data() {
    return {
      scale: 1,
      isBeating: false
    }
  },
  methods: {
    beatHeart() {
      if (this.isBeating) return;

      this.isBeating = true;
      this.scale = 1.2;

      setTimeout(() => {
        this.scale = 1;
        this.isBeating = false;
      }, 300);
    }
  }
}
</script>

关键CSS样式

<style>
.heart-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
}

.heart {
  width: 100px;
  height: 100px;
  background-color: red;
  position: relative;
  transform: rotate(45deg);
  cursor: pointer;
  transition: transform 0.3s ease;
}

.heart:before,
.heart:after {
  content: '';
  width: 100px;
  height: 100px;
  background-color: red;
  border-radius: 50%;
  position: absolute;
}

.heart:before {
  top: -50px;
  left: 0;
}

.heart:after {
  top: 0;
  left: -50px;
}
</style>

自动跳动版本

要实现自动跳动效果,可以添加以下修改:

mounted() {
  setInterval(() => {
    this.beatHeart();
  }, 1000);
}

复杂动画效果

更复杂的跳动动画可以通过CSS keyframes实现:

@keyframes heartbeat {
  0% { transform: scale(1) rotate(45deg); }
  25% { transform: scale(1.1) rotate(45deg); }
  50% { transform: scale(1.2) rotate(45deg); }
  75% { transform: scale(1.1) rotate(45deg); }
  100% { transform: scale(1) rotate(45deg); }
}

.heart-auto {
  animation: heartbeat 1s infinite;
}

这些代码组合起来就能在Vue中创建出点击跳动或自动跳动的爱心效果。可以根据需要调整颜色、大小和动画时间等参数。

vue 实现跳动爱心

标签: 爱心vue
分享给朋友:

相关文章

订单 vue实现

订单 vue实现

Vue 实现订单功能 数据模型设计 订单功能通常需要设计以下数据结构: // 订单数据结构 const order = { id: '', // 订单ID userId:…

vue表格重置怎么实现

vue表格重置怎么实现

重置表格数据的方法 在Vue中重置表格数据通常需要操作绑定的数据源,以下是几种常见实现方式: 直接重置数据源 // 假设表格绑定的是tableData this.tableData = [...t…

vue路由实现内部切换

vue路由实现内部切换

Vue 路由实现内部切换的方法 Vue Router 是 Vue.js 官方的路由管理器,用于实现单页应用(SPA)的页面切换。以下是几种常见的内部路由切换方式: 使用 <router-lin…

vue实现展开与收起

vue实现展开与收起

Vue 实现展开与收起功能 在 Vue 中实现展开与收起功能可以通过多种方式完成,以下是一些常见的方法: 使用 v-show 或 v-if 控制显示 通过 Vue 的指令 v-show 或 v-i…

vue实现视频会议

vue实现视频会议

使用 Vue 实现视频会议 技术选型 Vue.js 作为前端框架,结合 WebRTC 技术实现实时音视频通信。常用的库包括: peerjs:简化 WebRTC 的点对点连接。 socket.io:…

vue使用vr实现标注

vue使用vr实现标注

Vue 中使用 VR 实现标注的方法 在 Vue 项目中结合 VR 技术实现标注功能,可以通过 WebXR 和 Three.js 等库实现。以下为具体实现方法: 安装依赖 确保项目中已安装 Thr…