在Cordova/Phonegap应用中禁用iOS 10中的捏合缩放功能

5
我有一个使用Phonegap(Cordova)构建的移动应用程序,并且该应用程序已经上线App Store,但是iOS10 beta的新功能:

为了在Safari浏览器中提高网站的可访问性,即使网站在viewport中设置了"user-scalable=no",用户现在也可以通过捏合缩放来实现。

这使得应用程序变得可缩放,当应用程序进行缩放时,完全破坏了应用程序的设计。

也许这是针对移动端网站的功能(或者不是),但是我希望能够在混合移动应用程序上禁用此功能。

这是“index.html”文件中的“viewport”代码:

<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, target-densitydpi=medium-dpi, width=device-width, height=device-height" />

新版iOS即将发布,有没有已知的解决方案来解决这个问题?

我正在使用WkWebView

<engine name="ios" spec="~3.9.2" />
<preference name="phonegap-version" value="cli-5.2.0" />

更新

我将PhoneGap更新到版本6.3.0,iOS平台更新到4.1.1,但是出现了相同的错误。

3个回答

6

使用以下代码中的 user-scalable=no

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

我已经使用了 user-scalable=no,但新的ios10忽略了这个标签。这个问题只出现在ios10上。 - Daniel Dudas
安装最新的Cordova并重试。 - solimanware
我将PhoneGap升级到6.3.0版本,iOS平台引擎升级到4.1.1版本,但是仍然出现相同的错误。因此,这并没有解决问题。 - Daniel Dudas

1

0

这里提供了 iOS 10+ 的解决方案

// stop ios bounce and zoom 
document.ontouchmove = event => {
  event.preventDefault();
}; 

这将阻止移动事件到达根元素/浏览器


不起作用,在iOS13上测试 - Orhan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接