📅  最后修改于: 2023-12-03 15:42:29.802000             🧑  作者: Mango
你是否想要给用户一个特别的提示,让他们真正感受到你的应用程序的重要性和紧急性?本文将向你介绍如何在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