当前位置:首页 > 生活百科

ajax进度条特效怎么写(ajax异步实时加载进度条详解)

栏目:生活百科日期:2025-01-06浏览:0

一、ajax的简介

Ajax被认为是(Asynchronous(异步) JavaScript And Xml的缩写)。现在,允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax.

同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。

异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式 。

二、ajax的缺陷

AJAX大量使用了JavaScript和AJAX引擎,而这个取决于浏览器的支持。IE5.0及以上、Mozilla1.0、NetScape7及以上版本才支持,Mozilla虽然也支持AJAX,但是提供XMLHttpRequest的方式不一样。所以,使用AJAX的程序必须测试针对各个浏览器的兼容性。

AJAX更新页面内容的时候并没有刷新整个页面,因此,网页的后退功能是失效的;有的用户还经常搞不清楚现在的数据是旧的还是已经更新过的。这个就需要在明显位置提醒用户“数据已更新”。

对流媒体的支持没有FLASH好。

一些手持设备(如手机、PDA等)现在还不能很好的支持Ajax。

三、ajax的四种type类型:

1、GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改、增加数据,不会影响资源的内容,即该请求不会产生副作用。无论进行多少次操作,结果都是一样的。

2、与GET不同的是,PUT请求是向服务器端发送数据的,从而改变信息,该请求就像数据库的update操作一样,用来修改数据的内容,但是不会增加数据的种类等,也就是说无论进行多少次PUT操作,其结果并没有不同。

3、POST请求同PUT请求类似,都是向服务器端发送数据的,但是该请求会改变数据的种类等资源,就像数据库的insert操作一样,会创建新的内容。几乎目前所有的提交操作都是用POST请求的。

4、DELETE请求顾名思义,就是用来删除某一个资源的,该请求就像数据库的delete操作。

简单的说就是

get理解为查询 delete就是删除 post就是新增 put就是更新数据

四、ajax的原生写法

window.onload = function () { var oBtn = document.getElementById("btn1"); oBtn.onclick = function () { //1.创建ajax对象 //只兼容非ie6的浏览器,在ie6浏览器上运行会提示没有被定义 //var oAjax = new XMLHttpRequest();//这才是ajax实际的请求 //alert(oAjax); //ie6浏览器下按照下面方法写,但是在别的浏览器中不能用,会报错。 //var oAjax = new ActiveXObject("Microsoft.XMLHTTP"); //alert(oAjax); //鉴于上面出现的问题,可以采取下面的方法解决,用if判断是否为IE6浏览器 if (window.XMLHttpRequest)//如果有XMLHttpRequest,那就是非IE6浏览器。()里面加window的原因下面会有描述。 { var oAjax = new XMLHttpRequest();//创建ajax对象 } else//如果没有XMLHttpRequest,那就是IE6浏览器 { var oAjax = new ActiveXObject("Microsoft.XMLHTTP");//IE6浏览器创建ajax对象 } //2.连接服务器 //open(方法、文件名、异步传输) //方法: //传输方式是get方式还是post方式。 //文件名 //告诉服务器要读哪个文件 //异步传输 //异步:多件事一件一件的做 //同步:多件事情一起进行 //但是js里面的同步和异步和现实的同步异步相反。 //同步:多件事一件一件的做 //异步:多件事情一起进行 //ajax天生是用来做异步的 oAjax.open("GET", "a.txt?t='+new Date().getTime()", true);//加上t='+new Date().getTime()"的目的是为了消除缓存,每次的t的值不一样。 //3.发送请求 oAjax.send(); //4.接收返回 //客户端和服务器端有交互的时候会调用onreadystatechange oAjax.onreadystatechange = function () { //oAjax.readyState //浏览器和服务器,进行到哪一步了。 //0-&>(未初始化):还没有调用 open() 方法。 //1-&>(载入):已调用 send() 方法,正在发送请求。 //2-&>载入完成):send() 方法完成,已收到全部响应内容。 //3-&>(解析):正在解析响应内容。 //4-&>(完成):响应内容解析完成,可以在客户端调用。 if (oAjax.readyState == 4) { if (oAjax.status == 200)//判断是否成功,如果是200,就代表成功 { alert("成功" + oAjax.responseText);//读取a.txt文件成功就弹出成功。后面加上oAjax.responseText会输出a.txt文本的内容 } else { alert("失败"); } } }; }};

五、ajax的jquery写法:

$.ajax({ url: "http://www.microsoft.com", //请求的url地址 dataType: "json", //返回格式为json async: true, //请求是否异步,默认为异步,这也是ajax重要特性 data: { "id": "value" }, //参数值 type: "GET", //请求方式 processData: false, //对表单data数据是否进行序列化 contentType: false, //dataType设置你收到服务器数据的格式 xhr: function () { //ajax进度条 var xhr = $.ajaxSettings.xhr(); if (onprogress &&&& xhr.upload) { xhr.upload.addEventListener("progress", progressBar, false); return xhr; } }, beforeSend: function () { //请求前的处理 }, success: function (req) { //请求成功时处理 }, complete: function () { //请求完成的处理 }, error: function () { //请求出错处理 }});

当然,jquery还有很多简单变形的写法。

“ajax进度条特效怎么写(ajax异步实时加载进度条详解)” 的相关文章

a标签去掉下划线和变色在哪里设置(网页设计边框斜线)

1.CSS样式初始化不同的浏览器对有些HTML标签属性的默认值是不同的,为消除这种差异,需要对CSS进行初始化,即通过设置样式及其属性值,替代浏览器默认的属性值...

公众号文章修改标题(公众号已发送文章修改方法)

5月14日消息,今日有媒体发现,公众号文章可以修改20个错别字了,即增加、删除、修改不超过20个字,此前最多修改10个错别字。具体操作方面与此前基本一致,登陆公...

mac解压软件哪个比较好(mac系统启动u盘制作方法)

我们在使用Mac电脑的时候,一款好用的压缩软件是必不可少的工具,它可以提高工作效率,节省时间,那Mac上哪款压缩软件好用呢?今天小编给大家带来5款Mac上好用的...

git上传代码到码云步骤(git上传本地代码到指定的仓库)

1,首先在码云上新建一个项目,如下图所示2.本地新建一个文件夹3,进入新建的文件夹,点击鼠标右键,选择gitbashhere然后在窗口输入gitinit这时候文...

创业计划书的盈利模式怎么写(2点详解盈利模式书写技巧)

我发现创业者在写BP的时候犯了很多的错误,昨天有个网友把BP发给我,让我提建议,我看了一下,十几页几乎全是商业前景和市场未来。我说你的商业模式呢?他说倒数第二页...

2023年各大快递公司收费一览表(快递放假时间及收费)

剁手党们最关心的事春节期间快递打不打烊?近日,所谓“全国快递停运时间表”在网络流传,也有人担心是否会受到疫情影响。1月14日,记者从圆通、百世、湖南邮政快递等多...

二维码编辑器软件(图文二维码制作软件推荐)

讲真,二维码的确很好玩,利用它能做出不少有趣的东西,我们可以为自己手动一个二维码礼物,把它当做树洞说出自己心底的秘密和无法对他人道明的感受,释放自我。具体怎么制...

主播直播话术技巧开场白(直播间活跃气氛场控词)

如今做直播是一个非常热门的行业,也有很多新主播想要加入到直播大军的行列,那么直播有哪些活跃气氛的台词呢?小编为大家整理了一些。直播时应该和游客说什么:说直播内容...

什么牌子燃气热水器好,这五个品牌家家户户都说好

凭借国家基础设施建设持续完善和消费转型升级的的双重利好,燃气管道铺设日趋完善,燃气热水器的市场也在高速增长。市场上燃气热水器品牌如恒河沙数,销量高低并不能使我们...

lol最佳电脑配置,玩游戏的最佳配置

最近很多朋友咨询我玩英雄联盟的电脑配置,那今天我就给大家写个配置这套配置整体价格1886元,对于玩LOL来说最合适不过。接下来我们来说下《英雄联盟》这款游戏对硬...