浅谈Ajax相关及其优缺点

  AJAX,即Asynchronous Javascript And XML,可实现无刷新状态更新页面和异步提交

  优点:

  不需要插件支持

  用户体验极佳

  提升Web程序性能

  减轻服务器和宽带的负担

  缺点:

  前进后退按钮被破坏

  搜索引擎的支持不够

  开发调试工具缺乏

  同步和异步

  同步:也就是必须一件一件事做,等前一件做完了才能做下一件事

  异步:不需要等到前一件事做完,可多事同做

  JQuery对AJAX进行了三层封装

  最底层:封装了基础Ajax一些操作;

  全局方法:$.ajax()

  提交的数据在data中,用post方式提交,提交数据须用"{}"包裹,以"key:value"的形式提交

  提交整个表单时,可使用表单序列化"serialize()",提交整个表单

  decodeURIComponent():解序列化的数据

  encodeURIComponent():将数据序列化,serialize()也是调用此方法进行序列化

  serializeArray():表单转化为json形式

  $.ajaxSetup():初始化$.ajax()的数据,用于设定$.ajax()对象的默认值

  第二层:封装了jQuery的Ajax;

  局部方法:.load(url,data,callback)

  比较适合静态文件的异步获取

  全局方法:$.get(url,data,callback,type),$.post(url,data,callback,type)

  可使用与动态文件异步获取

  第三层:封装了get;

  全局方法:$.getJSON,$.getScript

  加载请求

  $(document).ajaxStart(function):请求开始时,触发的方法

  $(document).ajaxStop(function):请求结束时,触发的方法

  JSON和JSONP

  当dataType为JSON时,无法跨域获取数据,要在添加域名后面添加"?callback="才能实现跨域名调用数据。当dataType为JSONP时,可直接实现跨域获取数据。

  JQXHR对象

  jQuery jqXHR对象的属性和方法

  以上所述就是本文的全部内容了,希望大家能够喜欢。