繁体   English   中英

Google chrome - 禁用捏合缩放

[英]Google chrome - disable pinch zoom

我在火车站公共场所和机场都有一个售货亭。

随机的人需要使用在谷歌浏览器上运行的触摸屏应用程序。 当用户在 Google chrome 上应用 unpinch 或 pinch 操作时,Google chrome 使屏幕放大异常并使屏幕永远放大,然后我接到电话说我的应用程序不起作用。

在此处输入图片说明

在过去的谷歌浏览器中使用chrome://flags/#enable-pinch能够消除夹点,但现在在新版本中,他们删除了该功能,并遵循以下选项,它们都不再像过去使用``chrome 那样工作: //标志/#enable-pinch`

chrome://flags/#touch-events - 如果我禁用它,它会禁用谷歌浏览器上的整个触摸输入

<meta name="viewport" content="width=device-width, user-scalable=no"> - 如果我应用它,它对谷歌浏览器没有影响,仍然会发生捏/松开攻击

因此,我一直在尝试所有其他可能的方法来解决它

在此处输入图片说明 在此处输入图片说明 在此处输入图片说明 在此处输入图片说明 在此处输入图片说明 在此处输入图片说明

我把所有的头发都拔掉了,因为所有的选择都失败了。

任何人都可以请建议如何解决它? 我如何在 Google chrome 或整个操作系统上绝对禁用捏/松开? 我也尝试过控制面板,但没有一个控制面板显示禁用捏/松开攻击的选项。

// Dear God, please give me a Pinch disable option for, Google chrome. Its a nightmare, nothing stops pinch zoom actions.
window.addEventListener("touchstart", touchHandler, false);
function touchHandler(event){
    if(event.touches.length > 1){
      console.log("pinch "); // detected
      window.location.reload();// detected
      try {
        event.preventDefault(); // FAIL FAIL FAIL FAILLLLLLLL ???????????
        return false;
      }catch(eee) {
      }
    }
    else {
      console.log("pinch not");//detected
    }
}

答案: 2018

我一直在尝试使用自助服务终端应用程序解决同样的问题。 我已经尝试过元标记和触摸事件,但在应用程序方面没有任何东西对我有用。

最后,我发现的解决方案是在 kiosk 模式下启动 Chrome 时从命令行禁用捏合

下面是一个例子:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --start-fullscreen  --kiosk 
--disable-pinch  http://127.0.0.1:1000

我猜我对你来说有点晚了,但是对于下一个通过谷歌找到这个的人来说,解决方案实际上非常简单,只需使用纯CSS

您正在寻找的属性是touch-action ,正如 MDN 所解释的:

touch-action CSS 属性指定用户是否可以以及以何种方式通过触摸屏操作给定区域(例如,通过浏览器内置的平移或缩放功能)

禁用所有缩放的基本解决方案是将以下代码片段放置在您的CSS

body {
    touch-action: none;
}

还有其他选项,例如pan-xpan-leftpan-rightpan-ypan-uppan-downpinch-zoom

检查完整的文档@ https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM