点击和触摸开始不在Windows手机上工作

时间:2015-12-17 22:32:29

标签: jquery onclick windows-phone touchstart

所以最初我开始做$(document).on('click', '.selector, .secondSel', function(){...})并且它通常有效,但现在我添加了touchstart事件(尝试修复点击事件未被触发的时间)和点击事件在Windows手机上没有任何变化,它似乎甚至触发了事件。在Android手机上工作正常,我仍然需要检查iphone,但我认为它正在工作。是IE的东西吗?如果是这样,我如何使它在Windows手机上工作?

2 个答案:

答案 0 :(得分:0)

对于Windows手机和IE浏览器,目前不支持Touch API(Just for Edge作为实验性功能)。 IE浏览器有一个类似于Pointer API的功能,它允许你写一些类似的东西:

myelement.onpointerdown = function(evt) {};

您必须将css属性设置为HTML元素,您希望使用指针API:

-ms-touch-action: none;

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

答案 1 :(得分:0)

Windows Phone 8和Windows 10 Mobile中的touchstart等效项为mousedown。不要问为什么,但它有效。

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

.on('mousedown touchstart', function(e) { 
    /* do something */
})