简体   繁体   English

如何在iOS 10 Safari上的网页上禁用pinch2zoom?

[英]How to disable pinch2zoom on webpages on iOS 10 Safari?

It seems that: 看起来:

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

… has stopped working on mobile Safari after the iOS 10 update. ...在iOS 10更新后,已停止在移动Safari上工作。

Is there a way to disable pinch2zoom again? 有没有办法再次禁用pinch2zoom?

Please do not respond with "don't do this, outdated accessibility gyan and how the scroll has worked for web" because you don't understand my users or my needs, and I don't want this thread to become yet another flamewar between old school web developers and the new generation. 请不要回答“不要这样做,过时的可访问性gyan以及滚动如何为网络工作”,因为你不了解我的用户或我的需求,我不希望这个线程成为另一个老派网络开发人员和新一代。

I'm happy to use JavaScript to disable pinch2zoom sitewide. 我很高兴使用JavaScript在全站点禁用pinch2zoom。

For tap event: 对于tap事件:

document.addEventListener('touchmove', event => {
  if (event.scale !== 1) { event.preventDefault() }
}, false)

For doubletap event: 对于doubletap事件:

let lastTouchEnd = 0;
document.addEventListener('touchend', event => {
  const now = (new Date()).getTime()
  if (now - lastTouchEnd <= 300) event.preventDefault()
  lastTouchEnd = now
}, false)

Explanation is given on this answer . 对这个答案给出了解释

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

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