如何在Javascript中实现Loader

如何在Javascript中实现Loader,javascript,jquery,ajax,spring,Javascript,Jquery,Ajax,Spring,我想要一个简单的“页面加载”动画,而我的照片上传 因此,我尝试了“blockUI”javaScript, 但不知怎么的,它对我的身体不起作用 这里我使用了一个div作为上传图像的对话框,如下所示 为了提交或上传图像,我使用了ajax调用 function done() { var urls = "uploadImage"; var str = $("#upform").serialize(); $.ajax({ type:"post",

我想要一个简单的“页面加载”动画,而我的照片上传

因此,我尝试了“blockUI”javaScript, 但不知怎么的,它对我的身体不起作用

这里我使用了一个div作为上传图像的对话框,如下所示

为了提交或上传图像,我使用了ajax调用

function done()
 {
     var urls = "uploadImage";

    var str = $("#upform").serialize();
     $.ajax({
            type:"post",
            data:str,
            url:urls,
            async: false,
            dataType: "json",
            beforeSend: function() 
            { 

            },
            complete: function() 
            {
                $.unblockUI({});
                HideDialogInsert();
                e.preventDefault();
            },
            success: function(data){

                clear();
              }
          });
 }
在此之前,我想做什么(一个“页面加载”动画) 我用过,

$("#btnUpload").click(function (e)
            {

                HideDialogInsert();

                $.blockUI({ 
                        message: $('#displayBox'), 
                        css: { 
                            top:  ($(window).height() - 400) /2 + 'px', 
                            left: ($(window).width() - 400) /2 + 'px', 
                            width: '400px' 
                        } 
                        }); 
                done();

             });
但它不起作用, 它不会隐藏上载对话框。 但加载程序动画在对话框的背景下工作

所以请帮我找到解决办法

对于BlockUI参考,这里有一个链接


如果要隐藏上载对话框,请在完成()之前使用setTimeout()函数

块将隐藏,然后将运行进一步的代码

试试这个

$("#btnUpload").click(function (e)
            {

                HideDialogInsert();

                $.blockUI({ 
                        message: $('#displayBox'), 
                        css: { 
                            top:  ($(window).height() - 400) /2 + 'px', 
                            left: ($(window).width() - 400) /2 + 'px', 
                            width: '400px' 
                        } 
                    setTimeout($.blockUI, 2000);      }); 

                done();

             });

你为什么不给我提供一条路呢?否则所有的程序员必须1)下载这个插件2)创建HTML 3)将这个插件JS添加到HTML 4)运行文件中,然后5)查看问题所在。所以给JSFIDLE提供JS库的链接。这里的插件不是我的问题,它工作正常!!!。。。我的问题是对话没有隐藏…老兄,我知道,但我怎么能看到你的问题?我告诉过:所有的程序员都必须1)下载这个插件2)创建HTML 3)将这个插件JS添加到HTML 4)运行文件中,然后5)看看问题出在哪里。最终你不会得到答案。谁将为你完成以上步骤???你可以给js fiddle让我们看看哪里有问题在这里…请尝试一下…不,伙计…它不工作…因为它肯定会超时blockUI…不上传对话框…你能分享你的测试链接吗