Я использую шаблон jQuery для плагина я пишу. По сути, он просто запускает вызов ajax и заменяет содержимое элемента, на котором он работает. Пример:
Имя моего плагина 'getContent'
$('.container').getContent({
html : 'foo'
});
Очень упрощенная версия плагина, однако в самом низу шаблона есть вот это:
// A really lightweight plugin wrapper around the constructor,
// preventing against multiple instantiations
$.fn[pluginName] = function(options) {
this.each(function() {
if (!$.data(this, "plugin_" + pluginName)) {
$.data(this, "plugin_" + pluginName, new Plugin(this, options));
}
});
// chain jQuery functions
return this;
};
Очевидно, он выполняет некоторые проверки, чтобы убедиться, что pluginName уже привязан к элементу. В данном случае это так, и плагин не запускается, когда вы пытаетесь сделать это позже на том же экземпляре страницы.
Является ли правильным способом исправить мою проблему буквально просто удалить if вокруг раздела new Plugin
?