DOM IE/EDGE 上的触摸事件而不是 mousedown
DOM touch events on IE/EDGE instead of mousedown
我正在执行以下 js 代码以在 Canvas 上添加事件:
c.addEventListener("touchstart",function(e){console.log('touch')},true);
c.addEventListener("mousedown",function(e) {console.log("mouse")},true);
我的电脑是混合型 Windows 10 平板电脑。
在 IE/EDGE 上,当我执行鼠标单击时,我得到 'mouse' 日志。
在 IE/EDGE 上,当我在屏幕上执行触摸时,我也会收到 'mouse' 日志。
但是,在 IE/EDGE 移动设备(Windows phone)或 Chrome 上,我在触摸屏幕时收到 'touch' 日志。
我确信 shomehow IE/EDGE 在笔记本电脑上执行时会将 "touch" 事件转换为 'mouse' 事件。
是否有任何 javascript、元标记或任何选项来禁用此 "translation"?
注意。由于 PIXIJS 框架,我正在使用触摸和鼠标事件。
我正在笔记本电脑上处理 EDGE 上的 touchevents,您可以通过更改标志的某些设置来停止翻译。在浏览器中输入 about:flags URL。
有下场
“启用触摸事件”选择“仅在检测到触摸屏时启用”并在下方
“触发兼容的鼠标事件以响应点击手势”
选择“始终关闭”
如图
这将禁用您的自动翻译。重新启动浏览器,您将开始获取 touchevents。
Staring EdgeHTML 17,微软支持指针事件解决问题:
我正在执行以下 js 代码以在 Canvas 上添加事件:
c.addEventListener("touchstart",function(e){console.log('touch')},true);
c.addEventListener("mousedown",function(e) {console.log("mouse")},true);
我的电脑是混合型 Windows 10 平板电脑。 在 IE/EDGE 上,当我执行鼠标单击时,我得到 'mouse' 日志。 在 IE/EDGE 上,当我在屏幕上执行触摸时,我也会收到 'mouse' 日志。
但是,在 IE/EDGE 移动设备(Windows phone)或 Chrome 上,我在触摸屏幕时收到 'touch' 日志。
我确信 shomehow IE/EDGE 在笔记本电脑上执行时会将 "touch" 事件转换为 'mouse' 事件。
是否有任何 javascript、元标记或任何选项来禁用此 "translation"?
注意。由于 PIXIJS 框架,我正在使用触摸和鼠标事件。
我正在笔记本电脑上处理 EDGE 上的 touchevents,您可以通过更改标志的某些设置来停止翻译。在浏览器中输入 about:flags URL。 有下场 “启用触摸事件”选择“仅在检测到触摸屏时启用”并在下方 “触发兼容的鼠标事件以响应点击手势” 选择“始终关闭” 如图
这将禁用您的自动翻译。重新启动浏览器,您将开始获取 touchevents。
Staring EdgeHTML 17,微软支持指针事件解决问题: