Задать вопрос
@Hancock_888

Как вызвать метод в jquery plugin?

Добрый день всем!)
Как вызывать метод показать, или спрятать вкладку для одной группы вкладок?
К примеру есть плагин:

;(function($, window, document, undefined) {
	var pluginName = 'Tabs',
		defaults = { };

	function Plugin(element, options) {
		this.element = element;
		this.options = $.extend({}, defaults, options);
		this._defaults = defaults;
		this._name = pluginName;
		this.init();
	}

	Plugin.prototype.init = function() {
		console.log( 'init' );
	};
	Plugin.prototype.show = function(param) {		
		console.log( 'show' );
	};
	Plugin.prototype.set = function(param) {
		console.log( 'set' );
	};
	Plugin.prototype.hide = function(param) {
		console.log( 'hide' );
	};

	$.fn[pluginName] = function(options) {
		return this.each(function() {
			if (!$.data(this, 'plugin_' + pluginName)) {
				$.data(this, 'plugin_' + pluginName,
					new Plugin(this, options));
			}
		});
	};

})(jQuery, window, document);


Есть две кнопки
<button class="btn myButtonShow" data-name="Tabs_Group_name1">Показать</button>
    <button class="btn myButtonHide" data-name="Tabs_Group_name1">Спрятать</button>


и сам вызов
$(".myButtonShow").on("click", function() {
	$('.js_Tabs').Tabs.show();
});

$(".myButtonHide").on("click", function() {
	$('.js_Tabs').Tabs.hide();
});


Проблема в том что плагин инициализируется только один раз, т.е. если нажать кнопку показать, то при нажатии на кнопку спрятать ничего не происходит.
Как сделать что бы можно вызывать различные методы, такого типа? и как лучше?

$('.js_Tabs').Tabs.show();

$('.js_Tabs').Tabs.({
	show: true
});
  • Вопрос задан
  • 2851 просмотр
Подписаться 2 Оценить Комментировать
Решения вопроса 1
rdifb0
@rdifb0
Программист, реалист
Первое что пришло в голову jsfiddle.net/86LCk/2
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы