Safari IOS指针事件的解决方法(不支持) [英] Workaround for Safari IOS pointer events (not supported)
问题描述
https://developer.mozilla.org/en -US / docs / Web / API / HTMLElement / pointerdown_event
您好,我可以长时间单击,但是Safari中不支持指针事件api
Hello I have working code for a long click, but pointer event api is not supported in Safari only, currently under development.
是否有一些简单的解决方法可以仅适用于野生动物园?除非我可以使用其他事件?我尝试过'mousedown / mouseup',但是没有运气。
Is there some simple workaround I can apply just for safari? Unless I can just use some other event? I've tried with 'mousedown/mouseup' but no luck.
下面的代码适用于 touchstart / touchend以及 pointerdown / pointerup,但都没有全面的浏览器支持。
The below code works with "touchstart/touchend" as well as "pointerdown/pointerup" but neither have comprehensive browser support.
let pressTimer;
this.myDocsums.on('touchend', () => {
clearTimeout(pressTimer);
}).on('touchstart', (e) => {
let startY = window.pageYOffset;
let docsum = $(e.currentTarget);
let selectorInput = docsum.find('.selector-input');
pressTimer = window.setTimeout(() => {
let endY = window.pageYOffset;
if (startY == endY) {
selectorInput.trigger('click');
}
}, 750)
});
推荐答案
Safari现在支持指针事件(PC:2019/09 / 19,Mobile:2019/10/28)。
Safari now supports pointer events (PC: 2019/09/19, Mobile: 2019/10/28).
这篇关于Safari IOS指针事件的解决方法(不支持)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!