我正在使用Phonegap桌面应用程序创建一个应用程序,有时使用Phonegap Build,我发现我的网站与我的显示器一样大。
问题:不同的设备有一个状态栏(时钟,电池状态等),例如我的Nexus甚至还有一个带有控制按钮的底栏,显示在我的应用程序上。我的(使用css位置:固定)导航栏在这些设备本地栏下滚动。
知道如何拒绝或减去这些酒吧吗?如果我有 NO costum样式或样式库,我甚至可以看到这个。
<html>
<head>
<meta charset="utf-8" />
<meta name="format-detection" content="telephone=no" />
<meta name="msapplication-tap-highlight" content="no" />
<meta name="viewport" content="user-scalable=no, initial-scale=1,
maximum-scale=1, minimum-scale=1, width=device-width,
height=viewport-height, target-densitydpi=device-dpi" />
<title>Streetreporter</title>
<!-- jQuery library -->
<script src="libs/jQuery/jquery-1.12.4.js" type="text/javascript"></script>
<script type="text/javascript" src="cordova.js"></script>
</head>
<body >
TO DO content
<script type="text/javascript" src="js/index.js"></script>
</body>
</html>
<?xml version="1.0" encoding="UTF-8"?>
<!-- config.xml reference: https://build.phonegap.com/docs/config-xml -->
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id = "app.streetreporter"
version = "0.1.0">
<name>Streetreporter+Camera API Test</name>
<description>
Hello World sample application that responds to the deviceready event.
</description>
<author href="http://phonegap.com" email="support@phonegap.com">
PhoneGap Team
</author>
<content src="index.html"/>
<preference name="permissions" value="none"/>
<preference name="orientation" value="default" />
<preference name="target-device" value="universal" />
<preference name="fullscreen" value="true" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="true" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="true" />
<preference name="disable-cursor" value="false" />
<preference name="android-installLocation" value="auto" />
</widget>
答案 0 :(得分:2)
要避免此问题,请勿使用全屏模式:
<preference name="fullscreen" value="false" />
答案 1 :(得分:2)
首先,我没有遇到类似的事情,这可能只是关于nexus?
似乎问题只是视口的高度,在视口配置中;
<meta name="viewport" content="user-scalable=no, initial-scale=1,
maximum-scale=1, minimum-scale=1, width=device-width,
height=viewport-height, target-densitydpi=device-dpi" />
有height=viewport-height
配置,我通常不使用height参数,问题可能是,尝试删除并查看是否有任何更改。
此外,如果这不能解决您的问题,并且您想要在屏幕的最底部或顶部放置固定导航,则可能会执行以下操作。
将您的内容带入运营商div;
<div id="carrier">
<!--your code-->
</div>
在Javascript中;
window.onload = function(){
document.getElementById("carrier").height = window.innerHeight;
}
这里我们将载体div的高度设置为显示屏的innerHeight,记住innerHeight和outerHeight之间存在差异因此,这可能是你的导航在你的外层屏幕视图导航下的问题关系。
同样在CSS中,
#carrier { position:relative; overflow:scroll; }
.yourNavElem { position:absolute; bottom:0px; left:0px;}
并将导航元素的绝对位置用于载体元素。
我不确定它是否能解决问题,但是请让我更新。