在javascript中覆盖jQuery核心函数 – getJSON

我试图覆盖jQuery中的getJSON函数以提供额外的参数,然后调用原始的getJSON 。 我对JavaScript很不熟悉,并且从其他类似的例子中将它拼凑在一起。 我见过的大多数示例都覆盖了jQuery.fn命名空间中函数的行为。 有人可以通过告诉我我做错了什么来帮助我吗?

     (function($){ var _old = $.getJSON; $.getJSON = function(){ alert("Calling overridden getJSON"); return _old.apply(this,arguments); }; })(jQuery); $(document).ready(function() { try { $(this).getJSON('ajax/test.json', function(data) { var items = []; alert('done'); }); } catch (err) { alert(err.message); } });      

你需要调用$.getJSON ,而不是$(foo).getJSON ;

 $.getJSON('ajax/test.json', function(data) { var items = []; alert('done'); });