📜  颤振中的弹出警报 - Javascript(1)

📅  最后修改于: 2023-12-03 15:42:29.802000             🧑  作者: Mango

颤振中的弹出警报 - Javascript

你是否想要给用户一个特别的提示,让他们真正感受到你的应用程序的重要性和紧急性?本文将向你介绍如何在Javascript中实现一个颤振中的弹出警报。

实现

要实现这个特效,我们需要用到CSS3的animation属性来实现弹动效果。首先,我们需要设计一个大红色的圆形,作为我们的警告框。接下来,我们将使用CSS3的 keyframes 动画创建颤抖的效果,同时利用Javascript设置弹出动画开始和停止的时间。

这时代码如下:

<div id="alert">
  <h2>Warning!</h2>
  <p>This is an important alert message!</p>
</div>
#alert {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: red;
  color: white;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  text-align: center;
  display: none;
  animation: shake 0.8s ease-in-out infinite;
}

@keyframes shake {
  0% { transform: translate(-50%, -50%) rotate(0deg); }
  20% { transform: translate(-50%, -50%) rotate(15deg); }
  40% { transform: translate(-50%, -50%) rotate(-10deg); }
  60% { transform: translate(-50%, -50%) rotate(5deg); }
  80% { transform: translate(-50%, -50%) rotate(-5deg); }
  100% { transform: translate(-50%, -50%) rotate(0deg); }
}

然后我们需要用Javascript代码将我们设定的弹出时间添加到上面设置的CSS动画中。这里我们使用 setTimeout() 函数,可以在设置的时间过后,给alert元素设置 display:none,以实现警告弹出框的消失。

代码如下:

function showAlert() {
  var alert = document.getElementById("alert");
  alert.style.display = "block";
  setTimeout(function() {
    alert.style.display = "none";
  }, 3000); // 设置弹出框消失时间
}

最后,我们将这个函数运用到onClick事件中就可以让警告框以动画的方式弹出,并在时间结束后消失了。

<button onclick="showAlert()">Show Alert</button>
结论

在本文中,我们用Javascript实现了一个颤振中的弹出警报,通过CSS的animation属性和Javascript中的事件监听及setTimeout函数实现了更加动感的提示框效果。此实现可以实际应用在一些重要操作等场合,来更直接、更震撼地警示用户操作的风险,有助于增强用户的安全感和使用体验。

完整的代码可以在这里查看 GitHub