初步认识Ajax
Ajax是现在做前端的来说是一项不得不掌握的技术,其实更准确的来说是一种方法,在刚学完html和js的同学来说已经能够很好的完成一个页面的设计,以及页面与页面,页面与后台之间的交互,在信息传递的过程中我们有很多种实现的方法:表单的实现,页面的跳转以及重定向,servlet等等,然而在我们实际生活中碰到的有着很多信息的交互,难道我们每一次交互就要将整个页面都加载一遍?所需要的数据每次都要从云端或者数据库中重新加载?别吧,数据不多的时候还能这样,一多的话,光是加载都能让你等半天,要是同时访问的人数一旦增加,那你怕不是得去买一个容量更大的服务器了。
所以!!Ajax技术就现在而言是前端工程师一项所必备的技能了,为的就是能在页面交互信息的同时尽可能少的对页面的其他部分作出改动,从而达到能够更快速的运行该页面。当然啦,这个繁杂的解释是我这个鸟儿自己说的白话文,来一段W3C的简单解释吧。
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
没错!!就是这样,就一个简单的例子而言,微博,每个人多多少少肯定都有玩的吧,我们会点击里面一些我们感兴趣的内容从而进行浏览,但页面大致的框架是不会改变的,也就是说是有一个区域是专门来显示所有的内容,而我们点击进去之后也是在那一块区域显示我们点击的内容,其余的位置与内容一概不变。
什么是 AJAX ?AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。
在不同版本的浏览器下创建XMLhttpRqueest是不一样的,下面的这一串代码是从以前比较古老版本的浏览器创建到现在的规格等浏览器创建的不同方法,虽然现在一般都是在谷歌的环境下运行的,不过为了学习我们还是整理一下
1 //这里是判断在不同浏览器版本的情况下创建httpRequest应该用什么样的创建方法 3 try { 4 //微软第二代浏览器出创建 xmlHttpRequest实例对象的方式 5 httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); 6 } catch (e) { 7 try { 8 //2 微软第一代浏览器出创建 xmlHttpRequest实例对象的方式 9 httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); 10 } catch (e) { 11 try { 12 // 3 谷歌 火狐 或者 苹果浏览器 创建 xmlHttpRequest实例对象的方式 13 httpRequest = new XMLHttpRequest(); 14 if (httpRequest.overrideMimeType) { 15 httpRequest.overrideMimeType("text/xml"); 16 } 17 } catch (e) { 18 } 19 } 20 }