0

我有这个谜题。我已经下载了一个具有以下结构的 jQuery 插件

(function($, undefined) {
 function a() {
  ...
 }

 $.fn.fullCalendar = function(options) {
  ...
  var avar = a(); 
  ...
 }
})(jQuery);

我的任务是修改插件(我需要覆盖'a'函数)但我无法触及核心,我需要从外部文件修改它。所以......问题是我根本不知道有没有办法访问一个未命名的闭包,第二个如果我能够的话我能够覆盖其中的私有函数吗?

更具体地说:插件是:http : //arshaw.com/fullcalendar,我需要覆盖核心中的“daySegHTML”函数。

谢谢你的任何建议。

4

1 回答 1

1

你不能覆盖闭包中的函数(至少如果它们没有以某种方式暴露在外面的话)。修改它的唯一机会是修改源代码本身(如果许可证允许的话)。

闭包用于向用户“隐藏”功能。这可能是存在强大的 javascript 库(如 google maps)的唯一原因。

于 2013-05-13T14:15:37.010 回答