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. uniq命令 (转)

    uniq命令可以去除排序过的文件中的重复行,因此uniq经常和sort合用.也就是说,为了使uniq起作用,所有的重复行必须是相邻的. uniq语法 [root@www ~]# uniq [-icu] ...

  2. Knockout自定义绑定my97datepicker

    /* my97datepicker 时间格式'yyyy-MM-dd HH-mm-ss' */ ko.bindingHandlers.datetimes = { init: function (elem ...

  3. JDBC实战案例--利用jdbc实现的宠物信息管理系统

    一.需求: 利用jdbc实现对宠物的信息进行管理的一套系统 宠物信息:宠物ID,宠物类别,宠物名字,宠物性别,宠物年龄,宠物入库日期 系统完成功能:实现对宠物信息的录入,修改,删除,查询. 二.解决方 ...

  4. 触发器学习笔记(:new,:old用法)

    触发器学习笔记(:new,:old用法) 触发器是数据库发生某个操作时自动运行的一类的程序         用于保持数据的完整性或记录数据库操作信息方面         触发器不能够被直接调用,只能够 ...

  5. 转:一个多目录结构C程序的Makefile

    来源: ChinaUnix博客 一个多目录结构的C程序Makefile,代码存在main init input output exit目录. CC = gcc RDIR = RelsMAIN_DIR ...

  6. ArchLinux新版本(pacstrap安装)及国内较优源推荐

    下载安装镜像和配置虚拟机都略过. 进入安装模式以后第一件事是要进行分区,分区很重要,怎么分区是由后面的grub的模式来决定的.grub有3种模式,分别对应grub-bios-gpt,grub-bios ...

  7. HDUOJ---(2203)亲和串

    亲和串 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  8. Foundations of Machine Learning: The PAC Learning Framework(1)

    写在最前:本系列主要是在阅读 Mehryar Mohri 等的最新书籍<Foundations of Machine Learning>以及 Schapire 和 Freund 的 < ...

  9. iOS 网络编程 TCP/UDP HTTP

    一.HTTP协议的主要特点: 1. CS模式 2. 简单快速:只需要传送请求方法和路径.(常用方法有GET,HEAD,POST) 3. 灵活:任意对象都可以,类型由Content-Type加以标记 4 ...

  10. eclipse svn登陆用户保存信息删除

    win7系统 eclipse svn saveinfo path:磁盘:\%用户名%\AppData\Roaming\Subversion\auth\svn.simple 例如:D:\Users\用户 ...