特定のアイテムをクリックするとイベントをトリガーする小さなカスタム プラグインを作成しています。アイテムを左マウスでクリックすると、次のことがトリガーされます。
Holder.KeyboardPlugin.prototype.triggerExpansion = function() {
if(this.expandedItem){
var changedGroupSource = null;
Holder.events.trigger(this, 'groupselect', function(changedGroup){
changedGroupSource = changedGroup;
});
}
};
Holder.events.trigger
次のコードがあります:
function (object, event, properties) {
var index = this.indexOf(object);
var listener = this.listeners[index];
if (listener) {
var callbacks = listener.events[event];
if (callbacks) {
for (var i = 0, iMax = callbacks.length; i < iMax; i++) {
callbacks[i](properties);
}
}
}
ここでの問題は、上記の triggerExpansion() メソッドで、機能的にすべてが今のところ問題ないことです。クラス関数をそのコールバック関数に渡しtriggerProperties
、プラグインの内部changedSource
変数を変更しています。
ただし、これに加えて、選択したグループのインデックス (特定の番号) を html (プラグインを使用する) のリスナーに渡したいと考えています。すでにコールバック関数を渡しているため、ここでもコールバック関数とともに特定のインデックスを渡す方法を解決できません。助言がありますか?