javascript - 扩展 jQuery 的 $.post() 函数

标签 javascript jquery oop

我已经使用 jQuery 一段时间了,但我从未对它有过深入的了解。

如何扩展 $.post() 函数以向其添加我自己的功能?

目前我有兴趣添加的主要内容是一些 $.log() 调用,这样我就可以看到 iPad 上发生了什么,但我也有兴趣添加一些“正在加载”图标,以及也许还要考虑一些缓存。

最佳答案

我用 jQuery $.ajax 方法做了类似的事情。我在 jQuery 对象上创建了新的顶级方法:

$.extend({ myAjax: function(options) { 

  // code I want to run before the jQuery AJAX,
  // I can access and alter the options passed in

  var jqXHR = $.ajax(myAjax);

  // code I want to run after the jQuery AJAX
  // I can also run jQuery deferred code, e.g: jqXHR.done(function() { something });

});

然后您可以通过以下方式调用:

var options = {
  url: "http://example.com",
  type: "GET",
  dataType: "JSONP"
}

$.myAjax(options);

我在 jQuery AJAX 函数周围封装了附加功能。这使我能够选择使用增强函数或回退到基本 jQuery 函数。它还确保与插件、现有代码等的兼容性。

关于javascript - 扩展 jQuery 的 $.post() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6132641/

相关文章:

javascript - 组单击时分组网格折叠组

jquery - 正则表达式或

jquery - 移动切换效果

C++ 不必要的破坏

java - 访问多个 JpaRepositories 之前和之后运行函数

javascript - SetInterval不会立即启动JS

php - 错误: Unterminated string literal

ruby - 最佳原则中的原则

javascript - 111 是一个有效的 HTML id 属性,还是 document.querySelector() 和 document.querySelectorAll() 正确抛出语法错误?

javascript - 使用 JavaScript/jQuery 显示来自未标记字段的 JSON 数据