延迟功能无法正常工作.我确定我做错了什么.我有一个我想要使用的叠加层.当用户点击链接时,我希望此功能延迟1秒然后"释放",允许用户转到他们点击的链接.我怎样才能做到这一点?
$("body").append("<div id='overlay'></div>");
$("#overlay").height(docHeight).css({
...
}).delay(1000); <-- This is where I think it should go...
});
Run Code Online (Sandbox Code Playgroud)
编辑:
我已尝试过两种解决方案但我无法保持叠加层.屏幕刚刚刷新半秒左右.它忽略了setTimeout函数.我测试setTimeout函数所做的是以下但我甚至没有得到警报.我假设我会将我的覆盖代码放在我有警报()的位置,对吧?
为了清楚起见,我希望看到的是当单击.load选择器然后用户转发到他们单击的链接时的1秒延迟.
$('.load').click(function() {
setTimeout(function(){
alert();
}, 1000);
});
Run Code Online (Sandbox Code Playgroud)
jQuery延迟函数是jQuery动画的助手.它不会延迟任意操作.如果您需要延迟某些内容,请使用setTimeout.
以下将在1秒后执行内部函数.
setTimeout(function() { $("#overlay").height(100); }, 1000);
Run Code Online (Sandbox Code Playgroud)