gpt4 book ai didi

javascript - 在 JavaScript 中传递事件触发器的索引

转载 作者:行者123 更新时间:2023-11-28 09:20:40 24 4
gpt4 key购买 nike

我正在构建一个小型自定义插件,当我单击某个项目时,我会在其中触发一个事件。当用鼠标左键单击该项目时,会触发以下操作:

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(使用插件)中的监听器。由于我已经传递了回调函数,因此我无法在这里解决如何传递某个索引以及回调函数的问题。有什么建议吗?

最佳答案

也许你可以这样做:

Holder.events.trigger(this, 'groupselect', {
index: theIndex,
callback: function(changedGroup){...}
});

因此,在事件监听器中,您将拥有 event.index 和 event.callback。

这是你所需要的吗?

关于javascript - 在 JavaScript 中传递事件触发器的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15049958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com