AJAX基础详细介
简介
是什么 Asynchronous JavaScript and XML——异步JavaScript和XML AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 举个例子,我们去饭店吃饭,然后点了一桌子菜,后来发现其中有一道菜太咸了,因此我们只需要让服务员端回去给厨师重新做这一道菜再拿回来就行了。 在这个例子中的人、物对比Ajax的关系如下表:当我们发现有一道菜太咸了,不需要让厨师把所有的菜重新做一遍,只要让服务员拿这一道菜回去给厨师重做这一操作就相当于让ajax对象向后端请求那一小部分数据再拿回来更新页面而无需刷新整个页面。
<input type="submit">
在上世纪90年代,几乎所有的网站都由HTML页面实现,服务器处理每一个用户请求都需要重新加载网页。形式是怎样的呢?就比如说你在浏览器上登录自己的微博账号,填完了表单,点击登录按钮,一次"完整"的HTTP请求就此触发,服务器发现你的登录密码不对头,立马把网页原原本本的返回给你,在用户看来呢,就是一次重新加载的过程!用户体验极差!而且这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML码往往是相同的。由于每次应用的沟通都需要向服务器发送请求,应用的回应时间依赖于服务器的回应时间。这导致了用户界面的回应比本机应用慢得多。
特点
- 不是编程语言,而是一种使用现有标准的新方法
- 无需加载整个界面,可与服务器交换数据,更新部分网页
- 不需要浏览器插件,但需要用户允许js在浏览器上运行
为什么需要Ajax
在没有使用Ajax情况下:Web站点强制用户进入提交/等待/重新显示(重新加载整个网页),对于服务器加大了流量,对于用户每一次与服务器传递数据都会重新加载整个网页。 使用Ajax情况下:通过在后台与服务器进行少量数据交换,AJAX 使用JavaScript和DHTML立即更新UI(部分刷新),这对用户有利,因为它不会干扰或中断他或她正在使用的网页。 小提示: DHTML 是一种创建动态和交互 WEB 站点的技术集简单说就是HTML、CSS和 JavaScript 的组合 JavaScript 不是唯一使用 AJAX 编程的客户端脚本语言; VBScript 和其他语言都有这种功能,但 JavaScript 是最受欢迎的。工作原理
包含的技术 AJAX是基于现有的Internet标准,并且联合使用它们:- XMLHttpRequest 对象 (异步的与服务器交换数据)
- JavaScript/DOM (信息显示/交互)
- CSS (给数据定义样式)
- XML (作为转换数据的格式)
原理详述
同步与异步
同步的话,必须这个操作完了才会执行下一步,在等待期间浏览器会挂起不能执行任何接下来的js代码;
发表评论 (审核通过后显示评论):