首页 > 解决方案 > 淘汰赛点击绑定在 iPad 中不起作用

问题描述

我有一个像这样的简单按钮:

<button data-bind="click: login" type="button" class="btn btn-lg btn-primary">Log in</button>


ko.applyBindings({
    login: (viewModel, event) => {
        // this gets never called
    };
});

click 事件在我测试过的所有设备上都运行良好。iPad 9.3.5 (iPad mini) 除外

寻找答案我发现了以下解决方法:https ://makandracards.com/makandra/34753-how-to-fix-ipad-does-not-trigger-click-event-on-some-elements

它对我不起作用。无论如何,如何解决这个问题的想法?

注意:jQuery click 事件也不起作用。

标签: javascriptjqueryknockout.jsmobile-safari

解决方案


您正在使用箭头功能,根据caniuse.com的说法,iOS Safari 从版本 10 开始支持该功能。您可以将代码更改为以下内容:

ko.applyBindings({
    login: function(viewModel, event){
        // this gets never called
    };
});

或者,如果您的代码使用更多 ES6 特性,您可以考虑转译您的代码,例如使用babel或类似工具。


推荐阅读