AJAX显示加载图层的实现方法

来源:爱站网时间:2022-12-21编辑:网友分享
AJAX显示加载图层的实现方法内容有朋友想了解一下吗,小编在这里提供了相关知识点给你们参考,帮助你们解决实操上面带来的问题,感兴趣的话就请看看下列文章吧!

前言

相信每位开发者都应该有所了解,当用户发出AJAX请求时,如果长时间处于请求阶段,而没有给出用户回应,会给用户造成错觉,导致用户以为我们的系统“没反应“了。这从某方面来讲是一种不友好。

甚至有的时候,用户看不到想要的结果,就会不停的请求,这样会发生意想不到的后果。

所以,当发出AJAX请求时,我们给出一定的措施,保证系统的正确运行和良好的用户体验。

在这里,我使用的是:显示加载中图片,并弹出一个图层,使用户不能再次发出请求。

实现方法

HTML部分:

1

2

3

<div id="loading" class="loadingdiv">

    <img src="images/data-loading.gif" alt="图片加载中···" />

</div>

HTML部分只需要放置一个div,里面包含一个img。

CSS样式:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

/*图片加载中div图层,用于遮挡页面*/

.loadingdiv

{

  position:absolute;

  text-align:center;

  left:0px;

  top:0px;

  z-index:70;

  background-color:#000000;

  opacity: 0.7;/*透明#CCCCCC*/

  display:none;

  }  

/*加载中图片*/

.loadingdiv img

{

  position:absolute;

  left:0px;

  top:0px;

  z-index:80;

  }

对div和img进行样式设置。

JS代码

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

//ajax请求过程中,显示加载中图片并显示图层,请求完成隐藏图片

$(function () {

  //注册ajax加载事件

  $("#loading").ajaxStart(function () {

    //一个div,用来遮挡页面,请求过程中,不可操作页面

    var lockwin = $(this);

    //div占满整个页面

    lockwin.css("width", "100%");

    lockwin.css("display", "block");

    lockwin.css("height", $(window).height() + $(window).scrollTop());

    //设置图片居中

    $("#loading img").css("display", "block");

    $("#loading img").css("left", ($(window).width() - 88) / 2);

    $("#loading img").css("top", ($(window).height() + $(window).scrollTop()) / 2);

  });

  

  $("#loading").ajaxStop(function () {

    //隐藏div

    var lockwin = $(this);

    lockwin.css("width", "0");

    lockwin.css("display", "none");

    lockwin.css("height", "0");

    //设置图片隐藏

    $("#loading img").css("display", "none");

  });

});

总结

AJAX显示加载图层的实现方法都看完了吗,有哪些地方是需要小编提供帮助的,直接来平台里面留言,我们每天更新的技术知识点都经过了筛选的,希望这些内容对你们有帮助。

上一篇:ajax请求中传输中文遇到乱码怎么办

下一篇:Ajax post请求跳转界面实例代码

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载