一点关于Ajax和一个等待图标的显示
一点关于Ajax和一个等待图标的显示
1.首先Ajax是asynchronous Java-Script and XML的简写。翻译过来就是异步的JS和XML.
2它的优点就是能不更新页面的情况下,得到数据。当然JS是单线程语言,它所做的事情只是找了一个小帮手,让它去做了些事,比如拿了些数据,最后这个小帮手把数据给到JS,这个样子。就如同小杜同学可爱且漂亮的母亲想吃苹果,让小杜同学去拿苹果给她吃,小杜同学去拿了,且给她吃了。小杜同学可爱的母亲并没有做这件事情,她只是让小杜同学帮忙做了。
3.异步请求的步骤:
第一,就是创建一个异步的对象,new,也就是叫一个小帮手过来。如同小杜同学母亲大人(老潘)叫了一下小杜同学。小杜同学就过去了。
第二,就是设置此对象请求的地址和提交方式,open,也就是相当于是说告诉这个小帮手去做什么事情。然后老潘告诉小杜同学她辛辛苦苦把小杜同学养得这么大了,现在她想吃个苹果,想让小杜同学去取一下。
第三,设置一个回调函数。服务器向客户端发送过来响应数据后触发执行的一个JS方法。
第四,就是发送,send,也就是小帮手去做事情了。小杜同学想了想,老妈养了自己这么大了,j是得小孝敬一下她了,那么,就去洗个苹果给母亲大人吧,然后小杜同学就去做这个事情去了。
4.关于异步对象xhr的属性
onreadystatechangen属性,此是用来设置回调函数的。
readyState属性是获取当前XMLHttpRequest对象执行的状态的。共有5 个状态。其值分别为0,1,2,3,4。0是表示尚未初始化。1表示打开了。2是表示已发送。3是表示正在接收,交互中,还不能使用此方法的属性和方法。4是表示已加载,所有的数据均加载完毕。
responseText属性,以字符串方式,服务器向客户端响应的报文。
5.关于一个Ajax的一个需求。要求用Ajax实现一个层里显示当前的时间,和一个人的姓名和年龄。且此请求需要3S钟,在用户等待的三秒钟为了给客户一个良好的体验,给客户显示一个在转动的图片,当需要的东西出现时,此图标此消失。那么,请看下图:
此上两图为HTML部分,思路就是最先让图片隐藏,当点击显示按铵时,就让图片显示,图片一直动,表示后台是存在运行中的。当加载数据完毕,也就是属性readyState等于4的时候,则让图片隐藏就可以达到此效果了。
以下两图为效果图当在那三秒钟内的时候图片会显示,当数据到了的时候图片则会消失不见了。
注意一下post请求和get请求的不同,post请求参数是在send里写的且必须写设置报文头的那行代码,也就是第二个图片第37行的代码,不然参数会传不过去,不会显示。且此行代码必须写在open()之后,和send()之前,也就是在老潘叫了小杜同学去拿苹果给她吃和小杜同学出发去拿前。
然后,大概就这些了,欢迎看了我博客的同学批评指正。共同进步。
一点关于Ajax和一个等待图标的显示的更多相关文章
- 多个ajax请求下等待条显示和隐藏的简单处理
处理为遇到ajax请求就显示等待条,直到所有的ajax请求执行完毕才关闭等待条.比较简单,源码如下(基于jQuery) //基于jQuery //从第一个ajax请求发出开始显示等待条?直到一系列aj ...
- Flex利用titleIcon属性给Panel容器标题部添加一个ICON图标
Flex利用titleIcon属性,给Panel容器标题部添加一个ICON图标. 让我们先来看一下Demo(可以右键View Source或点击这里察看源代码): 下面是完整代码(或点击这里察看): ...
- 一个ICON图标的转换程序
抽空写了一个ICON图标的转换程序,支持png\jpe\bmp格式到ico的转换.具体的程序就在下面,如果看的人多,过两天再把思路写一下.废话不说,见代码. ...
- php处理数据库数据,每处理一个数据返回客户端显示当前状态的方法。
php处理大量数据,每处理一个数据返回客户端显示当前状态的方法. 类似于dedecms生成静态页 想法: 客户端发送请求 服务器端接受请求,开始统计所需处理的数据量 将所需处理数据按一定规则排列,发送 ...
- Ajax上传文件进度条显示
要实现进度条的显示,就要知道两个参数,上传的大小和总文件的大小 html5提供了一个上传过程事件,在上传过程中不断触发,然后用已上传的大 小/总大小,计算上传的百分比,然后用这个百分比控制div框的显 ...
- 【随记】修复TortoiseGit文件夹和文件状态图标不显示问题
一. 运行环境: 操作系统 Windows 10 64bit TortoiseGit (2.2.0.0) 64bit msysgit(2.9.2.1) 64bit 注意:请确保环境正确,软件的位数相匹 ...
- jQuery Mobile 图标无法显示
对jquery mobile来说,使用data-icon属性配置,可以设置元素的图标.图标没有变成右箭头,而是如下图所示: //已经设置了图标 ,data-icon="home" ...
- dedecms 5.7文章编辑器附件上传图标不显示
我最近发现在使用dedecms 5.7文章编辑器附件上传图标不显示了,以前是没有问题的,这个更新系统就出来问题了,下面我来给大家分享此问题解决办法. 问题bug:在dedecms 5.7中发现了一 ...
- 修复TortoiseGit文件夹和文件图标不显示
原文:http://blog.moocss.com/tutorials/git/1823.html 一. 我的运行环境: 操作系统 Windows 7/8 32bit TortoiseGit (1.7 ...
随机推荐
- 博客不再更新,已转移到自己的小站iwenku.net
博客不再更新,已转移到自己的小站iwenku.net,欢迎访问! 博客不再更新,已转移到自己的小站iwenku.net,欢迎访问! 博客不再更新,已转移到自己的小站iwenku.net,欢迎访问! 博 ...
- Part 11 Search filter in AngularJS
As we type in the search textbox, all the columns in the table must be searched and only the matchin ...
- mac(osx) apache无法启动 localhost无法访问服务器[]
问题描述:由于删除了/private/var/log下面的日志,导致重启电脑后apache无法正常工作. 删除log的初衷是:当系统用久了,日志文件占据了几十个G的硬盘容量. 造成的后果:重启电脑后a ...
- 本地wamp的Internal Server Error错误解决方法
一.本地wamp下调试url重写,加入htaccess文件后提示:500 Internal Server Error...,而删除这个文件网站又可以正常访问,其实就是没有开启url重写的功能.开启一下 ...
- Cocos移植到Android的一些问题-SQLite3数据库移植问题
首选我们讨论一下SQLite3数据库移植问题.我们在第14章节介绍了在Win32平台使用SQLite3数据库,我们介绍了两种配置环境的方法:一种是使用Cocos2d-x提供的SQLite3库配置,另一 ...
- 几款jQuery右键菜单插件
1.jQuery Very Simple ContextMenu Plugin 2.ContextJS Project Page:http://lab.jakiestfu.com/contextjs/ ...
- 生动详细解释javascript的冒泡和捕获,包懂包会(转)
前言:虽然精通jquery,但对它的原型javascript却不是很了解,最近在学习javascript中遇到了一些困难,比如冒泡和捕获,很多次被提到,但又不知究竟应用在何处.找到了一些好文章解惑,在 ...
- hibernate 一对多映射关系
1. 单项多对一映射 custom(顾客)与order(订单) :一个顾客可以有多个订单,一个订单只能有一个顾客 配置方法:在多的一端配置<many -to one& ...
- 常见web服务器错误
参考地址:http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5 10 Status Code Definitions ...
- centos下安装图像化界面
前面我们安装的centos系统多为没有图像化界面的命令行界面,为了安装oracle等工具,我们先为我们的centos安装图像化界面 使用命令为 yum groupinstall "Deskt ...