我正在使用jQuery 1.6.2,我必须在显示请等待动画的同时禁用页面上包含表单,选择和链接的所有元素。
我在Ajaxload找到了一个免费动画,并使用$('.gif').show();
显示它,等待一些javascript函数完成,然后调用$('.gif').hide();
然而,我碰到了一些我没想到的东西。当用户在下拉列表中选择一个新项目时,显示加载的gif动画,但不久之后,在与下拉列表相关联的嵌套javascript函数中,它会调用页面刷新,其中包含来自数据库调用的新数据,并在我可以删除之前移动动画调用hide函数。
所以我的问题是,是否可以显示一个将在jsp中显示的动画,然后继续直到重新加载完成?
我使用类似的东西来禁用链接点击事件:
$("a").click(function(event) {
// add some conditional logic here if animation is running then
event.preventDefault(); ...
那么,是否有更好的方法可以全局禁用页面上的所有元素,从而阻止选择下拉列表中的点击事件或更改事件?
后果:
我使用Archer的建议作为背景div,来自Jai的答案,以及这篇博客文章:jQuery page loading delay,这篇关于使用modal window with an animation的文章,并提出了一个适合的自定义解决方案正是我需要的。
感谢大家的帮助,非常感谢!
答案 0 :(得分:2)
可能会以这种方式一起使用doc ready
和window load
:
$(function(){
$('.gif').show();
$(window).load(function(){
$('.gif').hide();
$('#wrapper').show();
});
});
最初是wrapper div needs to be hidden
,当窗口完全加载show the wrapper
和hide the gif
时。