1. $(function(){
  2. jQuery.extend({
  3. put: function( url, data, callback, type ) {
  4. // shift arguments if data argument was omited
  5. if ( jQuery.isFunction( data ) ) {
  6. type = type || callback;
  7. callback = data;
  8. data = {};
  9. }
  10. return jQuery.ajax({
  11. type: "PUT",
  12. url: url,
  13. data: data,
  14. success: callback,
  15. dataType: type
  16. });
  17. },
  18. del: function( url, data, callback, type ) {
  19. // shift arguments if data argument was omited
  20. if ( jQuery.isFunction( data ) ) {
  21. type = type || callback;
  22. callback = data;
  23. data = {};
  24. }
  25. return jQuery.ajax({
  26. type: "DELETE",
  27. url: url,
  28. data: data,
  29. success: callback,
  30. dataType: type
  31. });
  32. }
  33. })
  34. jQuery.each( [ "get", "post","put","del"], function( i, method ) {
  35. // jQuery.get或jQuery.post为
  36. jQuery[ method ] = function( url, data, callback, type ) {
  37. if($("#loading")){
  38. $("#loading").show()
  39. }
  40. var callbackafter = function(){
  41. if($("#loading")){
  42. $("#loading").hide()
  43. }
  44. callback.call(window,arguments[0]);
  45. }
  46. // 模拟重载
  47. if ( jQuery.isFunction( data ) ) {
  48. type = type || callback;
  49. callback = data;
  50. data = undefined;
  51. }
  52. // 利用jQuery.ajax完成任务
  53. return jQuery.ajax({
  54. url: url,
  55. type: method,
  56. dataType: type,
  57. data: data,
  58. success: callbackafter
  59. });
  60. };
  61. });
  62. })()
  63. function disableAop(){
  64. jQuery.each( [ "get", "post","put","del"], function( i, method ) {
  65. // jQuery.get或jQuery.post为
  66. jQuery[ method ] = function( url, data, callback, type ) {
  67. // 模拟重载
  68. if ( jQuery.isFunction( data ) ) {
  69. type = type || callback;
  70. callback = data;
  71. data = undefined;
  72. }
  73. // 利用jQuery.ajax完成任务
  74. return jQuery.ajax({
  75. url: url,
  76. type: method,
  77. dataType: type,
  78. data: data,
  79. success: callback
  80. });
  81. };
  82. });
  83. }


拦截就是重写jquery默认的post等方法
还有一个禁用aop的就是把源码再声明一遍即可


 

jquery 拦截 post 等请求实现aop效果的更多相关文章

  1. jQuery - 拦截所有Ajax请求(统一处理超时、返回结果、错误状态码 )

    样例代码: <html> <head> <title>hangge.com</title> <meta charset="utf-8&q ...

  2. Struts2的拦截器是如何使用AOP工作的

    拦截器(interceptor)是Struts2最强大的特性之一,也可以说是struts2的核心,拦截器可以让你在Action和result被执行之前或之后进行一些处理.同时,拦截器也可以让你将通用的 ...

  3. 如何给selenium.chrome写扩展拦截或转发请求

    Selenium.WebDriver Selenium WebDriver 是一组开源 API,用于自动测试 Web 应用程序,利用它可以通过代码来控制chrome浏览器! 有时候我们需要mock接口 ...

  4. jquery mobile 实现自定义confirm确认框效果

    类似删除的效果,在执行之前,一般需要添加确认对话框,点确认的话执行,取消按钮就不执行,传统的js if(confirm('确定删除吗?')) { //执行代码 } 这种效果比较丑,使用jquery m ...

  5. jquery仿淘宝规格颜色选择效果

    jquery实现的仿淘宝规格颜色选择效果源代码如下 jquery仿淘宝规格颜色选择效果 -收缩HTML代码 运行代码 [如果运行无效果,请自行将源代码保存为html文件运行] <script t ...

  6. jquery制作弹出层带遮罩效果,点击阴影部分层消失

    jquery制作弹出层带遮罩效果,点击阴影部分层消失. 整体还是比较简单的. HTML代码很简单 <a href="#" class="big-link" ...

  7. Struts 2.3.24源码解析+Struts2拦截参数,处理请求,返回到前台过程详析

    Struts2官网:http://struts.apache.org/ 目前最新版本:Struts 2.3.24 Struts1已经完全被淘汰了,而Struts2是借鉴了webwork的设计理念而设计 ...

  8. jQuery Wheel 环形菜单插件5种效果演示

    很酷的菜单-jQuery Wheel 环形菜单插件5种效果演示在线预览 下载地址 实例代码 <div class="container"> <!-- Top Na ...

  9. 基于 jQuery 实现的精致作品集图片导航效果

    今天,我们要用 jQuery 来创建一个作品集图像的导航模板.我们的想法是,以分组的方式显示一组作品集,并通过二维的方式(水平/垂直)来浏览.任一箭头或当前图像下方的小盒子可以作为导航使用. 在线演示 ...

随机推荐

  1. Android拍照+方形剪裁——附代码与效果图

    本文链接    http://blog.csdn.net/xiaodongrush/article/details/29173567 參考链接    http://stackoverflow.com/ ...

  2. Unity3D - 资源管理

    一直没有总结过Unity的资源管理,都是随用随看文档.今天有人问起,总结一下.加深对Unity资源管理的理解. 主要參考了Unity官方文档之Resources和AssetBundle. Unity有 ...

  3. 自定义网站的icon和收藏夹图标

    定制网站收藏夹图标的方法有两种: 第一种方法: 第一步,当然是准备一个能体现您的主页的风格和个性的图标.比较简便的办法除了下载,就是将您的网站的logo做成一个图标. 第二步,将这个图标文件命名为:f ...

  4. Log4net的配置-按照日期+文件大小混合分割

    ender name="DebugAppender" type="log4net.Appender.RollingFileAppender"><fi ...

  5. MONyog_5.6.9.0 key激活|监控MYSQL

    SQLyog与MONyog是一家公司对mysql推出的商业化软件,可能大家对SQLyog很熟悉,MONyog是对mysql-server服务的监控. 脚本执行时长.安全性.等的监控! key:a668 ...

  6. 错误号:1364 错误信息:Field &#39;platId&#39; doesn&#39;t have a default value

    1. 错误描写叙述 错误号:1364 错误信息:Field 'platId' doesn't have a default value insert into `use`.`t_platform_sc ...

  7. Web Service——CXF发布REST服务

    1. 什么是REST REST,英文representational state transfer(表象性状态转变)或者表述性状态转移,REST是web服务的一种架构风格,使用HTTP.URI.XML ...

  8. QRCode - 二维码识别与生成

    来源:Yi'mouleng(@丶伊眸冷) 链接:http://t.cn/R40WxcM 前言 有关二维码的介绍,我这里不做过多说明, 可以直接去基维百科查看,附上链接QR code(https://e ...

  9. linux 常用awk命令

    linux awk命令详解awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每 ...

  10. 【Linux】排序命令uniq

    很多时候,我们都会去计算一次数据里头的相同型态的数据总数,举例来说, 使用 last 可以查得这个月份有登陆主机者的身份.那么我可以针对每个使用者查出他们的总登陆次数吗? 此时就得要排序与计算之类的命 ...