Ajax是客户端技术,不论使用何种服务器段记述,都能使用Ajax
Ajax常犯的错误:
1 不同于IFrame和隐藏框架,用过XHR做出请求不会修改浏览器的历史栈。在很多情况下没有问题,但是如果用户想用后退按钮 就会出现问题
2 Ajax不会修改地址栏中显示的连接,即你不能轻松的唯一个页面建立书签,或向别人发送以及连接。对许多应用肯能没用这个要求,但是如果你的网站专门为人提供车路线之类的东西,就要针对这个问题提供一个解决的方案
3 使用Ajax不要过度。JavaScript会在客户端的浏览器上运行,如果JS代码过多的,用户会感觉很慢。且如果脚本编写不当,会很快失去控制,特别是当通信量增加时。
4 Ajax允许异步完成操作,但是用户可能不明白这点。记住要让用户知道异步的操作正在进行。
5 Ajax可在在浏览器中查看源代码,建立XHR对象时必须包含URL,所以可能会用恶意用户修改你的网站。谨慎的使用AJax可以降低这种风险。
1 不同于IFrame和隐藏框架,用过XHR做出请求不会修改浏览器的历史栈。在很多情况下没有问题,但是如果用户想用后退按钮 就会出现问题
2 Ajax不会修改地址栏中显示的连接,即你不能轻松的唯一个页面建立书签,或向别人发送以及连接。对许多应用肯能没用这个要求,但是如果你的网站专门为人提供车路线之类的东西,就要针对这个问题提供一个解决的方案
3 使用Ajax不要过度。JavaScript会在客户端的浏览器上运行,如果JS代码过多的,用户会感觉很慢。且如果脚本编写不当,会很快失去控制,特别是当通信量增加时。
4 Ajax允许异步完成操作,但是用户可能不明白这点。记住要让用户知道异步的操作正在进行。
5 Ajax可在在浏览器中查看源代码,建立XHR对象时必须包含URL,所以可能会用恶意用户修改你的网站。谨慎的使用AJax可以降低这种风险。
什么时候用?
验证和表单填写就非常适合采用AJax实现,还可以使用DOM的“拖”技术建立真正的动态的网站。
XMLHttpRequest对象
在使用XMLHttpRequest对象发送请求和处理响应之前,必须先用Javascript创建一个XMLHttpRequest对象。IE把XMLHttpRequest实现为一个ActiveX对象,其他浏览器(Firefox,Safari和Opera)把它实现为一个本地Javascript对象。由于存在这些差别,JS代码必须要包含有关的逻辑,检查浏览器是否提供对ActiveX对象的支持。日过支持,就用ActiveX来创建XMLHttpRequest对象,否则,就用本地JS对象技术来创建。