[英]Why the property of this cannot be accessed directlly within a private function in a closure?
[英]Overriding a private function within a closure
我有這個難題。 我已經下載了具有以下結構的jQuery插件
(function($, undefined) {
function a() {
...
}
$.fn.fullCalendar = function(options) {
...
var avar = a();
...
}
})(jQuery);
我的任務是修改插件(我需要重寫'a'函數),但我無法觸及內核,需要從外部文件進行修改。 所以...問題是我不知道有沒有辦法訪問未命名的閉包,如果可以的話,我可以覆蓋其中的私有函數嗎?
更具體地說:插件是: http ://arshaw.com/fullcalendar,我需要在內核中覆蓋“ daySegHTML”功能。
謝謝您的任何建議。
您不能覆蓋閉包中的函數(至少如果不以某種方式暴露於外部則不能如此)。 修改它的唯一機會是修改源代碼本身(如果許可證允許的話)。
閉包用於向用戶“隱藏”功能。 這可能是為什么有強大的JavaScript庫(例如Google Maps)在那里的唯一原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.