当我的网站加载时,弹出窗口出现 - 我需要在特定时间后自动关闭它。
$(document).ready(function () {
//select the POPUP FRAME and show it
$("#popup").hide().fadeIn(1000);
//close the POPUP if the button with id="close" is clicked
$("#close").on("click", function (e) {
e.preventDefault();
$("#popup").fadeOut(1000);
});
});
已经有一个按钮,但我需要删除它。
答案 0 :(得分:3)
您可以使用delay()
功能:
$(document).ready(function() {
$("#popup").hide().fadeIn(1000).delay(5000).fadeOut(1000);
$("#close").on("click", function(e) {
e.preventDefault();
$("#popup").fadeOut(1000);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="popup">popup</div>
请注意文档中给出的注释:
.delay()方法最适合在排队的jQuery之间延迟 效果。因为它是有限的 - 例如,它没有提供一种方法 取消延迟-.delay()不是JavaScript本机的替代品 setTimeout函数,可能更适合某些用途 例。
答案 1 :(得分:1)
Javascript有选项 setTimeout .setTimeout是一个本机JavaScript函数(虽然它可以用于jQuery这样的库,我们稍后会看到),它调用一个函数或执行一个函数指定延迟后的代码段(以毫秒为单位)。
setTimeout(function() {
$("#popup").fadeOut(1000);
}, 1000);
或在jquery中使用.delay()
。设置计时器以延迟队列中后续项的执行。
$("#popup").delay(1000).fadeOut(1000);