3
jQueryで最初のプラグインを作成しようとしていますが、コールバックと少し混乱しています。プラグインのコールバック関数
私にとっては、すべてがうまくいるようですが、それほどうそをつくことはありません。
ロジックは(私が想定したように)グローバルsettings
オブジェクトを作成することです。それはその後、ここonAdd
$('#xxx').tokenizer(...
を上書きする必要がありますので、私はちょうどadd
アイテムが、コンソールで、それは悲しい、tokenizer
設定が拡張されます/与えられた設定/オプションで上書きインスタンス化する場合:
The item in onAdd
undefined
ここ
var settings = {
onAdd: function() {},
onRemove: function() {},
sourceSelecter: null,
targetSelector: null
};
$.fn.tokenizer = function (options) {
this.settings = $.extend({
targetSelector: this,
idName: 'id'
}, settings, options);
this.add = function (item) {
console.log('The item in function add: ' + item);
this.settings.onAdd.call(item);
};
this.remove = function (item) {
this.settings.onRemove.call(item);
};
return this;
};
var $tokenizer = $('#xxx').tokenizer({
sourceSelector: 'group',
onAdd: function (item) {
console.log('The item in onAdd');
console.log(item);
}
});
$tokenizer.idName = 'groupId';
$tokenizer.add('abcdefg');
クール、それは動作します、ありがとうございました。私は十分な知覚を読み取っていませんでした。 SOタイマーで私が答えを受け入れることができるようになると、私はします。 – vaso123
私は助けることができてうれしい。 – BenG