1

所以最初我从做开始$(document).on('click', '.selector, .secondSel', function(){...}),它通常工作,但现在我添加了touchstart事件(试图修复未触发点击事件的时间)以及点击事件在 Windows 手机上没有任何变化,看起来事件是'甚至触发。在 android 手机上工作正常,我仍然需要检查 iphone,但我认为它正在工作。与IE有关吗?如果是这样,我如何让它在 Windows 手机上也能正常工作?

4

2 回答 2

0

对于 Windows phone 和 IE 浏览器,目前不支持 Touch API(仅适用于 Edge 作为实验功能)。IE 浏览器有一个类似的功能,称为 Pointer API,它允许您编写如下内容:

myelement.onpointerdown = function(evt) {};

您必须在要使用指针 API 的 HTML 元素上设置一个 css 属性:

-ms-touch-action: none;

如果您想在 Android 和 Windows 手机之间使用相同的代码,您需要一个 polyfill 库,例如:https ://github.com/CamHenlin/TouchPolyfill 。

于 2015-12-17T22:44:07.363 回答
0

touchstartWindows Phone 8 和 Windows 10 Mobile 中的等价物是mousedown. 不要问为什么,但它有效。

将此用于触摸事件的跨平台支持:

.on('mousedown touchstart', function(e) { 
    /* do something */
})
于 2017-09-28T14:25:42.730 回答