Safari IOS指针事件的解决方法(不支持) [英] Workaround for Safari IOS pointer events (not supported)

查看:119
本文介绍了Safari IOS指针事件的解决方法(不支持)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆