У меня есть существующий плагин jQuery, теперь я хочу его расширить. Рассмотрим приведенный ниже плагин:
$.fn.x = function(option) {
        var def = {
            a: 1,
            b: 2
        };
        option = $.extend(def, option);
        function abc() {
            //do something
        }
        function def() {
            //do something
        }
    };
Теперь вышеописанный плагин, который я получил откуда-то. Мне нужно иметь пользовательское поведение для метода abc, скажем
function abc() {
                //do something else
            }
Я не хочу менять существующий плагин. Можете ли вы рассказать мне, как я могу добиться того же, расширив его или создав собственный пользовательский плагин?
EDIT: Я тоже пробовал это с помощью метода, упомянутого ниже:
        (function($) {
        $.fn.x = function(option) {
            var defaults = {
                a: 1,
                b: 2
            };
            option = $.extend(def, option);
            function abc() {
                //do something
                console.log('Base method called');
            }
            function def() {
                //do something
                abc();
            }
            def();
        };
    })(jQuery);
    (function() {
        var x = $.fn.x;
        $.fn.x.abc = function() {
            console.log('Overidden method called');
            //_x.abc();
        };
    })();
    $('<div/>').x();
Но я все еще получаю "базовый метод, называемый" в качестве вывода консоли.
