jquery - 扩展 jQuery 插件的最佳方式

标签 jquery plugins fullcalendar extend

我是一个相当新的 jQuery 用户,希望扩展一个现有的 jQuery 插件,它可以完成我需要的大约 75% 的功能。我已经尝试在这方面做功课。我在 stackoverflow 上查看了以下问题:

我已经 read up在扩展方法上。然而,所有这些作业让我感到困惑。我正在使用 fullcalendar插件,需要修改一些行为以及添加新的事件 Hook 。我是否坚持在插件闭包本身中这样做?我是否遗漏了一些明显的东西?

理想情况下,我们能够将我们的代码与插件代码分开,以便进行可能的升级。任何帮助将不胜感激,尤其是关于我遗漏了一些信息或意见的指示,这些信息或意见表明其他 Stack Overflow 问题中已经提出的解决方案是否有意义。对我来说,它们相互矛盾,我仍然感到困惑。

最佳答案

我在尝试扩展 jquery UI 插件时遇到了同样的问题,这是我找到的解决方案(通过 jquery.ui.widget.js 找到的):


(function($) {
/**
 *  Namespace: the namespace the plugin is located under
 *  pluginName: the name of the plugin
 */
    var extensionMethods = {
        /*
         * retrieve the id of the element
         * this is some context within the existing plugin
         */
        showId: function(){
            return this.element[0].id;
        }
    };

    $.extend(true, $[ Namespace ][ pluginName ].prototype, extensionMethods);


})(jQuery);

希望对您有所帮助,如有任何问题,请提出。

关于jquery - 扩展 jQuery 插件的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2050985/

相关文章:

c# - 将来自不同 MEF 插件的 ToolStripMenuItem 合并到一个 MenuStrip 中

javascript - FullCalendar,如何更改日期格式?

javascript - CSS/HTML : how to have custom arrows on fullpage JS?

jquery - 在 jQuery 中订购 <UL>/<OL> 最简单的方法是什么?

javascript - PhoneGap Android LowLatencyAudio 插件不起作用

plugins - 模块 "taggableComplete"未启用

Angular2 FullCalendar 回调无法访问的属性

jQuery FullCalendar 不解析 json

javascript - 在 'input propertychange' 上绑定(bind)的 jQuery 函数未按预期触发

javascript - 单击按钮时如何使用 Ajax 打开弹出表单提交?