页面加载10秒后显示div:现有jQuery脚本修改方案咨询
修改方案:延迟显示+定时淡出
要实现「页面加载10秒后显示元素,显示20秒后淡出」的效果,只需要把显示元素的操作放到一个10秒的定时器里,同时在显示完成后再启动20秒的淡出定时器就可以了,具体修改如下:
// 先确保元素初始处于隐藏状态(页面加载时看不到) jQuery("#messageBox").hide(); // 页面加载后延迟10秒执行显示操作 setTimeout(function() { // 滑入显示元素 jQuery("#messageBox").slideDown(); // 元素显示后,再延迟20秒执行淡出 setTimeout(function() { jQuery("#messageBox").fadeOut(); }, 20000); // 20秒 = 20000毫秒 }, 10000); // 10秒 = 10000毫秒
逻辑说明:
- 初始先调用
hide()确保元素在页面加载时是隐藏的(如果已经通过CSS给#messageBox设置了display: none,这一步可以省略,但保留也不会有问题)。 - 外层
setTimeout负责延迟10秒触发显示动作slideDown()。 - 内层
setTimeout在元素显示后启动,负责20秒后执行淡出fadeOut(),保证元素是显示满20秒后才消失,而不是页面加载后30秒直接消失。
这样调整后就完全符合你想要的时序啦~
内容的提问来源于stack exchange,提问作者user2329017
相关产品推荐
相关产品推荐

