以下にjQueryプラグインを作成しましたが、要素の同じインスタンスに対して再度呼び出すことができるようにしたいと思います。
プラグインは行きます...
(function($) {
$.fn.myPlugin = function(options){
var settings = {
color: null
};
if (options) {
$.extend(settings, options);
}
return this.each(function(){
var self = this;
var pics = $('li', self);
function refresh() {
pics = $('li', self);
};
$('a', self).click(function(){
pics.filter(':last').remove();
alert(settings.color);
refresh();
return false;
});
});
}
})(jQuery);
このページでは、これは...と呼ばれています。
$('#test').myPlugin({ color: 'blue' });
ここで、同じインスタンスに対して同じプラグインを呼び出しますがrefresh
、他のすべての変数が同じである間(したがって、色は引き続きblue
)、オプションとして文字列を渡します。
$('#test').myPlugin('refresh');
これにより、refresh()
関数が実行されます。
上記でどうすればそれを達成できますか?
編集:明確にするために、jQueryUIがプラグインをどのように実行するかを考えています。ソート可能なプラグインでは、同じ要素で$("#sortable").sortable();
実行できます。$("#sortable").sortable('refresh');
これが私が達成しようとしていることです。