当前位置: 代码迷 >> Ajax >> jQuery Mobile 手动展示ajax加载器,提示加载中.
  详细解决方案

jQuery Mobile 手动展示ajax加载器,提示加载中.

热度:495   发布时间:2013-10-29 12:07:57.0
jQuery Mobile 手动显示ajax加载器,提示加载中...

From: http://blog.csdn.net/zht666/article/details/8563025

?

在使用jQuery Mobile开发时,有时候我们需要在请求ajax期间,显示加载提示框(例如:一个旋转图片+一个提示:加载中...)。这个时候,我们可以手动显示jQuery Mobile的加载器,大致流程如下:

1. 启动加载器,显示“加载中...”;

2. 进行ajax请求,请求完成后更新页面数据,刷新jQuery Mobile控件样式;

3. 关闭加载器。

下面就来讲解jQuery Mobile 1.2.0 和 1.1.0 中手动显示加载器的方法(很简单,几行代码就OK了!)。

先是jQuery Mobile 1.2.0?引用:

[html] view plaincopy
  1. <!DOCTYPE?html>??
  2. <html>??
  3. ????<head>??
  4. ????????<title>Ajax测试</title>??
  5. ????????<meta?charset="gbk">??
  6. ????????<meta?name="viewport"?content="width=device-width,?initial-scale=1">??
  7. ????????<!--?从官方下载的文件放在项目的?jquery-mobile?目录中?-->??
  8. ????????<link?rel="stylesheet"?href="jquery-mobile/jquery.mobile-1.2.0.min.css"/>??
  9. ????????<link?rel="stylesheet"?href="jquery-mobile/jquery.mobile.structure-1.2.0.min.css"/>??
  10. ????????<script?src="jquery-mobile/jquery-1.8.2.min.js"></script>??
  11. ????????<script?src="jquery-mobile/jquery.mobile-1.2.0.min.js"></script>??
  12. ????<head>??

编写javascript函数:

[javascript] view plaincopy
  1. <script>??
  2. //显示加载器??
  3. function?showLoader()?{??
  4. ????//显示加载器.for?jQuery?Mobile?1.2.0??
  5. ????$.mobile.loading('show',?{??
  6. ????????text:?'加载中...',?//加载器中显示的文字??
  7. ????????textVisible:?true,?//是否显示文字??
  8. ????????theme:?'a',????????//加载器主题样式a-e??
  9. ????????textonly:?false,???//是否只显示文字??
  10. ????????html:?""???????????//要显示的html内容,如图片等??
  11. ????});??
  12. }??
  13. ??
  14. //隐藏加载器.for?jQuery?Mobile?1.2.0??
  15. function?hideLoader()??
  16. {??
  17. ????//隐藏加载器??
  18. ????$.mobile.loading('hide');??
  19. }??
  20. </script>??

准备两个按钮,一个用于启动(显示)加载器,一个用于停止(隐藏)加载器:

[html] view plaincopy
  1. <body>??
  2. ????<div?data-role="page">??
  3. ????????<!--?头部?-->??
  4. ????????<div?data-role="header">??
  5. ????????????<h3>Ajax测试</h3>??
  6. ????????</div>??
  7. ????????<!--?内容?-->??
  8. ????????<div?data-role="content">??
  9. ????????????<h3>Ajax测试</h3>??
  10. ??????????????
  11. ????????????<input?type="button"?value="显示ajax加载器"?onclick="showLoader()"/>??
  12. ????????????<input?type="button"?value="隐藏ajax加载器"?onclick="hideLoader()"/>??
  13. ??????????????
  14. ?????????</div>??
  15. </body>??

效果如下(主题为:'a'):

?

当然,你可以调整$.mobile.loading('show', { ... }中的参数,实验各种不同的加载器效果。

加载器的具体说明见jQuery Mobile 1.2.0 官方demo演示说明

http://jquerymobile.com/demos/1.2.0/docs/pages/loader.html

  相关解决方案