1

我正在开发基于 android sdk 和 Eclipse 的 Phonegap 应用程序。只是采用了默认代码并添加了<meta>可扩展性,但它不允许我在 Android SGS2 设备中放大或缩小。(没有在 iPhone 上检查,因为我没有。)

代码如下:

<!DOCTYPE HTML>
<html>
  <head>
  <meta name="viewport" 
        content="user-scalable=yes" />
  <!--<meta name="viewport" 
        content="user-scalable=yes, 
                initial-scale=1, 
                maximum-scale=4, 
                minimum-scale=1, 
                width=device-width, 
                height=device-height, 
                target-densitydpi=device-dpi" />
                 -->
    <title>First App</title>
  <script src="cordova-2.2.0.js"></script>
  <script>
     function onLoad(){
          document.addEventListener("deviceready",
                onDeviceReady, true);
     }
     function onDeviceReady(){
                navigator.notification.alert("PhoneGap is working!!");
     }
  </script>
  </head>
  <body onload="onLoad();">
       <h1>Welcome to PhoneGap</h1>
       <h2>Edit assets/www/index.html</h2>
  </body>
</html>
4

2 回答 2

1

尝试对user-scalable使用1而不是yes

<meta name="viewport" content="user-scalable=1" />

它可以设置为yes1

user-scalable属性被翻译成 'user-zoom' 并具有以下值翻译。

  1. yes 和 no 分别被翻译成“缩放”和“固定”。
  2. Numbers ≥ 1, numbers ≤ -1, device-width 和 device-height 映射到'zoom'
  3. <-1, 1> 范围内的数字和未知值映射到“固定”

请参阅参考资料:

W3C CSS 设备适配规范:用户可扩展

和这个:

http://dev.w3.org/csswg/css-device-adapt/

于 2014-10-30T14:46:09.297 回答
1

在Android上,您是否也像这样在loadUrl之后启用了缩放?

super.loadUrl(Config.getStartUrl(), 80000);

WebSettings settings = super.appView.getSettings();
settings.setBuiltInZoomControls(true);
settings.setSupportZoom(true);

就个人而言,除非你真的需要支持它,否则启用缩放确实是自找麻烦。

于 2013-08-19T15:06:06.110 回答