「每日一题」AJAX 是什么?

2023-01-01 0 497

天下人都说他们会 AJAX,所以你能说确切甚么是 AJAX 吗?

—————-

就那么单纯?是的。

下面完整的如是说。

AJAX 以后的黄金时代

在 AJAX 被发明者以后,应用领域程序是是不是发动允诺的?

页面。使用者在页面输出 http://baidu.com ,按quarterfinal,就向 http://baidu.com

发动了两个允诺。(与此同时网页创下)

a 条码。使用者点选网页中的 a 镜像,也会发动两个允诺。(与此同时网页创下)

img 条码。网页中假如有 img 条码,所以就会发动两个为此相片的允诺(网页没创下,但根本无法允诺相片)类似于的还有 link 条码、script 条码,都能对两类文档的允诺。

为甚么他们须要 AJAX?

下面列出的允诺发动形式,或者会引致网页创下,或者根本无法允诺某两类别的文档(相片、CSS 或 JS)。

Gmail

彼时谷歌颇具技术创新觉悟地提供更多了两个专有USB ActiveXObject(“Microsoft.XMLHTTP”),并在 IE 5.0 中对外开放给开发人员用。

Gmail 的开发人员辨认出那个USB后喜出望外,并借以顺利完成了第两个知名的 AJAX 应用领域——Gmail,使用者能在两个网页里顺利完成递送电子邮件、增设过滤器准则等繁杂的机能。

自此,AJAX 成了前端开发人员必会的专业技能。

后来其他应用领域程序也跟进了,提供更多了类似于的USB「XMLHttpRequest」,机能类似于,下文会说到。最终 W3C 标准也接纳了 XMLHttpRequest。

到底甚么是 AJAX?

再说一遍,就是用 JS 发动两个允诺,并得到服务器返回的内容。

这跟以前的技术最大的不同点在于「网页没创下」,仅此而已。

想要用 JS 发动两个允诺很单纯,一共 4 步。

1. 创建两个对象

var request = new XMLHttpRequest()

2. 监听允诺成功后的状态变化

request.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { console.log(request.responseText) } };

第三行的 request.responseText 就是服务器返回的内容了(默认是字符串)

3. 增设允诺参数

request.open(“GET”, “filename”, true);

4. 发送允诺

request.send();

这 4 步看起来是有些繁杂的,不要紧,jQuery.ajax 对这 4 步进行了封装,只须要一步就能了:

$.get(filename).then(function(response){ // 这里的 response 就是返回的内容 })

用 AJAX 允诺甚么?

目前最常见的情况是用 AJAX 允诺 JSON 格式的数据,比如:

$.get(/data.php).then(function(response){ // response 是 { “name”: “小谷” } })

其实,你可以用 AJAX 允诺任何内容,包括

XML 内容

HTML 内容

CSS 内容

JavaScript 内容

……

以上,就是 AJAX 的单纯如是说。

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务