提问者:小点点

iOS Safari -停用缩放选项


我对缩放有问题。我想阻止pinch在HTML元素上放大移动Safari。我使用脚本来防止浏览器的默认行为,它对于正常的缩放很好,但是当我用一个手指开始滚动,然后添加第二个手指并缩放时,Safari仍然在缩放页面...

有人知道我如何阻止这种缩放吗?

我正在使用画布创建手机游戏,并使用HTML作为消息窗口,所以请不要写因为可访问性原因阻止缩放是个坏主意。

防止缩放的代码:

document.addEventListener("touchmove", function(event) {
  event = event.originalEvent || event;

  if(event.touches.length > 1 || event.scale > 1) {
    event.preventDefault();
  }
}, false);

更新:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />

此元标记不起作用,因为Apple从iOS 10开始在Mobile Safari中禁用了它,直到可访问性原因


共1个答案

匿名用户

你能测试一下吗?

document.documentElement.addEventListener('touchmove', function (event) {
    event.preventDefault();
}, false);