【问题标题】:Disable pinch-to-zoom in iOS 10 in Cordova/Phonegap app在 Cordova/Phonegap 应用程序中禁用 iOS 10 中的捏合缩放
【发布时间】:2016-11-25 07:27:39
【问题描述】:

我有一个使用 phonegap (cordova) 构建的移动应用程序,并且该应用程序已在应用商店上线,但 iOS10 测试版的这个新功能:

为了提高 Safari 中网站的可访问性,即使网站在视口中设置了 user-scalable=no,用户现在也可以捏合缩放

使应用程序可缩放,它在缩放时完全破坏了应用程序的设计。

也许这是移动网站的一项功能(或不是),但我希望能够为混合移动应用禁用此功能

这就是viewportindex.html 中的样子

<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,我遇到了同样的错误。

【问题讨论】:

    标签: ios cordova wkwebview pinchzoom cordova-ios


    【解决方案1】:

    使用user-scalable=no作为以下代码:

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

    【讨论】:

    • 我已经使用user-scalable=no,但是新的ios10忽略了这个标签。问题只出在ios10上。
    • 安装最新的cordova并重试
    • 我将phonegap升级到6.3.0,将ios平台引擎升级到4.1.1,我也有同样的错误。所以这并不能解决问题。
    【解决方案2】:

    这是适用于 iOS 10+ 的解决方案

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

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

    【讨论】:

      猜你喜欢
      • 2018-06-22
      • 2013-05-05
      • 2015-10-07
      • 2012-04-15
      • 1970-01-01
      • 2012-12-27
      • 1970-01-01
      • 1970-01-01
      • 2020-02-19
      相关资源
      最近更新 更多