当前位置:首页 > JavaScript

js实现表白

2026-02-02 06:18:12JavaScript

js实现表白

以下是用JavaScript实现表白效果的几种创意方法,结合动画、交互和视觉效果:

基础弹窗表白

alert("我喜欢你!");
confirm("可以做我的男/女朋友吗?") 
  ? alert("❤️ 爱你!") 
  : alert("😭 我会继续努力的!");

页面动态爱心效果

<style>
  .heart {
    position: absolute;
    transform: rotate(45deg);
    background: red;
    animation: beat 1s infinite;
  }
  @keyframes beat {
    0% { transform: rotate(45deg) scale(1); }
    50% { transform: rotate(45deg) scale(1.5); }
  }
</style>
<script>
  function createHeart() {
    const heart = document.createElement('div');
    heart.className = 'heart';
    heart.style.width = '20px';
    heart.style.height = '20px';
    heart.style.left = Math.random() * window.innerWidth + 'px';
    heart.style.top = Math.random() * window.innerHeight + 'px';
    document.body.appendChild(heart);

    setTimeout(() => {
      heart.remove();
    }, 3000);
  }
  setInterval(createHeart, 300);
</script>

打字机效果文字

const message = "我喜欢你很久了...";
let i = 0;
const typing = setInterval(() => {
  document.body.innerHTML += message[i];
  i++;
  if (i >= message.length) clearInterval(typing);
}, 200);

点击生成爱心

document.addEventListener('click', (e) => {
  const heart = document.createElement('div');
  heart.innerHTML = '❤️';
  heart.style.position = 'absolute';
  heart.style.left = e.clientX + 'px';
  heart.style.top = e.clientY + 'px';
  heart.style.fontSize = Math.random() * 30 + 10 + 'px';
  document.body.appendChild(heart);

  setTimeout(() => {
    heart.remove();
  }, 1000);
});

高级版表白页面

<!DOCTYPE html>
<html>
<head>
  <style>
    body {
      background: pink;
      text-align: center;
      padding-top: 100px;
      font-family: Arial;
    }
    #message {
      font-size: 24px;
      margin: 20px;
    }
    button {
      padding: 10px 20px;
      margin: 10px;
      font-size: 18px;
    }
    #yes {
      background: lightgreen;
    }
    #no {
      background: pink;
      position: relative;
    }
  </style>
</head>
<body>
  <h1>我喜欢你!</h1>
  <div id="message">你愿意和我在一起吗?</div>
  <button id="yes">愿意</button>
  <button id="no">不愿意</button>

  <script>
    document.getElementById('yes').addEventListener('click', () => {
      document.getElementById('message').innerHTML = '❤️ 太棒了!我爱你! ❤️';
    });

    document.getElementById('no').addEventListener('mouseover', () => {
      this.style.position = 'absolute';
      this.style.left = Math.random() * window.innerWidth * 0.8 + 'px';
      this.style.top = Math.random() * window.innerHeight * 0.8 + 'px';
    });
  </script>
</body>
</html>

这些代码可以根据需要组合使用或单独实现,效果会随着创意和个性化调整而提升。

js实现表白

标签: js
分享给朋友:

相关文章

js 实现vue模板

js 实现vue模板

实现 Vue 模板的 JavaScript 方法 通过原生 JavaScript 可以实现类似 Vue 的模板渲染功能,主要包括数据绑定、指令处理和模板解析。以下是核心实现思路: 数据绑定与…

js实现轮播图

js实现轮播图

基础轮播图实现 使用HTML、CSS和JavaScript实现一个简单的自动轮播图。HTML结构包含一个容器和多个图片项。 <div class="slider"> <div…

js实现倒计时

js实现倒计时

使用 setInterval 实现倒计时 通过 setInterval 定时器每秒更新剩余时间,适用于简单倒计时场景。 function countdown(seconds, callbac…

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现全屏

js实现全屏

实现全屏的基本方法 使用JavaScript实现全屏功能主要依赖Element.requestFullscreen()方法。现代浏览器均支持此API,但不同浏览器可能需要添加前缀。 // 触发全屏…

原生js实现轮播图

原生js实现轮播图

基本结构搭建 HTML部分需要包含轮播图容器、图片列表及导航按钮。结构示例如下: <div class="slider-container"> <div class="slid…