Доступ к пользовательской функции jQuery внутри указанной функции через подфункцию - PullRequest
1 голос
/ 09 августа 2011

Мне было интересно, как я мог получить доступ к пользовательской функции jQuery внутри подфункции, которая определена через объект. Обратите внимание:

(function($){
    var methods = {
        init    : function ( options ) {
            // getting the variable "data".
            $.each (data, function(itemid, toll){
                $.notification("update", data);
            });
        },
        update  : function ( options ) {
            // ...
        }
    };
    $.fn.notification = function ( method ) {
        if ( methods[method] ) {
            return methods[method].apply( this, Array.prototype.slice.call( arguments, 1 ));
        } else if ( typeof method === 'object' || ! method ) {
            return methods.init.apply( this, arguments );
        }
    };
})(jQuery);

Приведенный выше метод с использованием $.notification ("update", data); не работает, потому что функция находится в середине определения. Итак, как можно получить доступ к вышеуказанной функции, не повторяя код? то есть написать функцию для обновления вне переменной method, а затем поместить эту функцию в индекс update переменной метода? Заранее благодарю. :3

1 Ответ

1 голос
/ 09 августа 2011

Используйте приведенную ниже строку, чтобы выполнить его

$().notification("update", data);
...