概述
Asynchronous Javascript And XML
, AJAX 不是一门的新的语言,而是对现有技术的综合利用。
ajax 是一种技术方案,依赖浏览器提供的 XMLHttpRequest 对象发出 HTTP 请求和接收 HTTP 响应;实现了在页面不刷新的情况下和服务器进行数据交互。
本质是在HTTP协议的基础上以异步的方式与服务器进行通信。
同步和异步概念:
同步是阻塞模式,异步是非阻塞模式
-
同步:提交请求 >> 等待服务器处理 >> 处理完毕返回,这个期间浏览器不能干任何事。
-
异步:请求通过事件触发 >> 服务器处理(这时浏览器仍然可以运作其它事情) >> 处理完毕
ajax 发送 HTTP 请求
-
创建一个XMLHttpRequest对象
/* 创建 XMLHttpRequest 对象 ;XMLHttpRequest 用于在后台与服务器交换数据。 这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新 */ var xhr = null; // 检查浏览器是否支持 XMLHttpRequest 对象 if(window.XMLHttpRequest){ // 若支持则创建 XMLHttpRequest 对象 // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码 xhr = new XMLHttpRequest(); }else { // 若不支持创建 ActiveXObject // IE6, IE5 浏览器执行代码 xhr = new ActiveXObject("Microsoft.XMLHTTP")