еще одна возможность использовать объекты HTML из xslt является следующей:
<xsl:text disable-output-escaping="yes">&nbsp;</xsl:text>
быстрый способ записать это так:
$.myPlugin = function () {
// Plugin code
}
правильный способ записать это так:
(function ($) {
$.extend({
myPlugin: function () {
// plugin code
}
});
})(jQuery);
Это может показаться Сначала это немного сбивает с толку, но это обычный шаблон jQuery.
(function($){
// Code
})(jQuery);
Этот код создает анонимную функцию и вызывает ее, передавая jQuery
в качестве аргумента. Внутри функции этот аргумент привязан к $
. Причина этого в том, что он позволяет вам работать с $
, даже если jQuery работает в бесконфликтном режиме .
Вторая часть - $. расширить
. По сути, он расширяет сам объект jQuery, когда вызывается с одним аргументом.
Вызов плагина (в быстром и правильном случае):
$.myPlugin();
Используется ли коллекция, если вы пишете что-то другое, например $ ('a'). MyPlugin ()
? Если нет, то почему вы помещаете его в $. Fn
? Возможно, вы хотели внедрить его в сам jQuery
.
Если он действительно работает с коллекцией, но иногда имеет смысл пустая коллекция, тогда я думаю, что ваш вызывающий должен быть $ ([])
- передача пустого массива
в jQuery
дает вам пустую коллекцию; ничего не передавая, похоже, вы получаете коллекцию, содержащую документ
.
Я думаю, вы ищете jQuery.extend ():
jQuery.extend({
func: function() {
alert('test');
}
});
$.func();