Подтвердить что ты не робот

Расширение существующей функции jQuery

Я пытаюсь написать плагин, который расширяет существующую функцию в jQuery, например.

(function($)
{
    $.fn.css = function()
    {
        // stuff I will be extending
        // that doesn't affect/change
        // the way .css() works
    };
})(jQuery);

Мне нужно только несколько бит, чтобы расширить функцию .css(). Имейте в виду, что я спрашивал о PHP-классах, так как вы можете className extend existingClass, поэтому я спрашиваю, можно ли расширить функции jQuery.

4b9b3361

Ответ 1

Конечно... Просто сохраните ссылку на существующую функцию и назовите ее:

(function($)
{
    // maintain a reference to the existing function
    var oldcss = $.fn.css;
    // ...before overwriting the jQuery extension point
    $.fn.css = function()
    {
        // original behavior - use function.apply to preserve context
        var ret = oldcss.apply(this, arguments);

        // stuff I will be extending
        // that doesn't affect/change
        // the way .css() works

        // preserve return value (probably the jQuery object...)
        return ret;
    };
})(jQuery);