使用浏览器 DevTools 中不需要的右键单击

1po*_*es1 5 firefox google-chrome-devtools mobile-development ionic2 angular

我对 Web 开发比较陌生,目前正在构建一个 Ionic/Angular2 混合移动应用程序。到目前为止,我一直在浏览器开发工具中使用得很好。

当我使用移动设备测试屏幕时,每当我单击/按住时,浏览器都会注册右键单击。仅当我在设备测试视口内单击并按住,而不是在设备视图之外时,才会发生这种情况。

因此,我认为这可能是应用程序代码中的问题,但出现的右键单击菜单是来自我的计算机的菜单,而不是移动设备上的二次点击菜单。它发生在更新的 Firefox 和 Chrome 开发工具中,但我找不到任何设置。我有一台 MacBook Pro,并调整了所有触控板/鼠标设置,但无济于事。

这极大地阻碍了我的测试,因为我的应用程序中有按住功能,但我无法测试它,因为当注册右键单击时,我的应用程序屏幕无法记录 mouseup 事件。

这是我在这里问的第一个问题,所以请轻松一点,哈哈,感谢您的帮助!

Luc*_*Luc 1

这是由于 Chrome 中的一项“功能”在按住触摸光标时模拟上下文菜单(右键单击)。这是因为在大多数 Android/iOS 设备上,点击并按住会弹出复制/粘贴菜单。

要禁用此行为,只需将其添加到您的网络应用程序中:

window.addEventListener('contextmenu', function(e) {
  e.preventDefault();
}, true);
Run Code Online (Sandbox Code Playgroud)

这会在上下文菜单出现之前将其杀死。