gpt4 book ai didi

javascript - 将事件对象传递给 knockout.js 函数

转载 作者:行者123 更新时间:2023-11-30 08:32:15 26 4
gpt4 key购买 nike

我正在使用 bind 从我的 Angular 调用带有参数的函数:

<span data-bind="click: modifyByOne.bind($data, 'plus')"></span>

根据 this answer我通过这样做得到 event 对象:

self.modifyByOne = function(type){
var span = $(event.currentTarget);
};

在 Chrome 中一切正常,但在 Firefox 中我收到以下控制台错误:

event is not defined

如何让它在 Firefox 中也能正常工作?Knockout 文档对此没有提供太多答案。

最佳答案

knockout 点击绑定(bind)将两个参数传递给监听器方法:当前绑定(bind)上下文 ($data) 和事件。

通过使用绑定(bind),您可以像以前一样指定要传递给该方法的其他参数。这些参数在两个默认参数之前传递。因此,您的方法应该接受类型、数据事件参数。

self.modifyByOne = function(type, data, event){
var span = $(event.target);
};

虽然这应该可行,但从您的代码中使用 DOM 进行操作被认为是不好的做法。 Try creating a custom binding instead .

关于javascript - 将事件对象传递给 knockout.js 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35921798/

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