Navigator
navigator用于管理浏览器运行环境信息
方法:
- closeSplashscreen关闭程序启动界面
- isFullscreen判断应用当前是否全屏模式显示
- isLogs判断应用当前是否输出日志
- setFullscreen设置应用是否全屏显示
- setLogs设置应用是否输出日志
- setStatusBarBackground设置系统状态栏背景颜色
- getStatusBarBackground获取系统状态栏背景颜色
- setStatusBarStyle设置系统状态栏样式
- getStatusBarStyle获取系统状态栏样式
- setUserAgent设置userAgent值
- getUserAgent获取userAgent值
- setCookie设置Cookie值
- getCookie获取Cookie值
- removeAllCookie删除应用所有Cookie值
- removeCookie删除应用Cookie
- removeSessionCookie删除应用所有会话期Cookie值
closeSplashscreen
关闭程序启动界面
void plus.navigator.closeSplashscreen();
说明:
很多情况下,程序启动后需要一段时间加载数据,为了避免界面显示空白内容,提高用户体验效果,这时可显示启动界面。 等数据加载完成后再关闭启动界面进入应用,通常可在应用首界面加载数据完成并更新显示内容后调用此方法。
返回值:
无
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 关闭程序启动界面
plus.navigator.closeSplashscreen();
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
关闭程序启动界面
</body>
</html>
isFullscreen
判断应用当前是否全屏模式显示
Boolean plus.navigator.isFullscreen();
说明:
判断应用当前是否全屏模式显示
返回值:
应用全屏模式显示时返回true,否则返回false。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 是否全屏显示
console.log( plus.navigator.isFullscreen()?"Fullscreen!":"Not fullscreen!" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
判断应用当前是否全屏模式显示
</body>
</html>
isLogs
判断应用当前是否输出日志
Boolean plus.navigator.isLogs();
说明:
日志包括应用原生层内部跟踪日志(ADB、LogCat工具可获取的日志)及JS层跟踪日志(console.log输出的日志)。 开启日志在一定程度上会降低程序的性能,通常建议在正式发布时关闭日志输出,在调试时开启日志输出(此时可以通过工具ADB、LogCat获取分析日志)。
返回值:
应用输出日志时返回true,否则返回false。
平台支持:
Android : 2.3+
iOS : 不支持 无日志输出功能。
WP : 不支持
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 是否全屏显示
alert( plus.navigator.isLogs()?"应用开启输出日志!":"应用关闭输出日志!" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
判断应用当前是否输出日志
</body>
</html>
setFullscreen
设置应用是否全屏显示
void plus.navigator.setFullscreen( fullscreen );
说明:
设置应用在全屏模式显示时,将隐藏系统状态栏,通常游戏类应用才会设置为全屏模式显示。
参数:
- fullscreen (Boolean) 可选 true表示全屏模式显示,false表示非全屏模式显示,默认为非全屏模式显示。
返回值:
无
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 全屏显示
plus.navigator.setFullscreen( true );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
应用全屏模式显示
</body>
</html>
setLogs
设置应用是否输出日志
void plus.navigator.setLogs( log );
说明:
设置应用是否输出日志信息,默认关闭输出日志功能。 日志包括应用原生层内部跟踪日志(ADB、LogCat工具可获取的日志)及JS层跟踪日志(console.log输出的日志)。 开启日志在一定程度上会降低程序的性能,通常建议在正式发布时关闭日志输出,在调试时开启日志输出(此时可以通过工具ADB、LogCat获取分析日志)。
参数:
- log (Boolean) 可选 true表示开启输出日志功能,false表示关闭输出日志功能,默认为关闭输出日志功能。
返回值:
无
平台支持:
Android : 2.3+
iOS : 不支持 无日志输出功能。
WP : 不支持
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 开启输出日志
plus.navigator.setLogs( true );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
应用开启输出日志功能
</body>
</html>
setStatusBarBackground
设置系统状态栏背景颜色
void plus.navigator.setStatusBarBackground( rgb );
说明:
设置应用在前台运行时系统状态栏的背景颜色,默认使用系统的白色背景。
参数:
- rgb (String) 可选 背景颜色字符串,格式为#RRGGBB
返回值:
无
平台支持:
Android : 不支持 不支持设置系统状态栏背景颜色。
iOS : 7.0+
需iOS7.0及以上版本才支持设置系统状态栏背景颜色。WP : 不支持 不支持设置系统状态栏背景颜色。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置系统状态栏背景为红色
plus.navigator.setStatusBarBackground( "#FF0000" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置系统状态栏背景为红色
</body>
</html>
getStatusBarBackground
获取系统状态栏背景颜色
String plus.navigator.getStatusBarBackground();
说明:
获取应用在前台运行时系统状态栏的背景颜色。
返回值:
系统状态栏的背景颜色,格式为#RRGGBB。
平台支持:
Android : 不支持 不支持获取系统状态栏背景颜色。
iOS : 7.0+
需iOS7.0及以上版本才能获取的正确的系统状态栏背景颜色。WP : 不支持 不支持获取系统状态栏背景颜色。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置系统状态栏背景为红色
var rgb = plus.navigator.getStatusBarBackground();
console.log( "StatusBarBackground: "+rgb );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置系统状态栏背景为红色
</body>
</html>
setStatusBarStyle
设置系统状态栏样式
void plus.navigator.setStatusBarStyle( style );
说明:
设置应用在前台运行时系统状态栏的样式,此操作是应用全局配置,Webview窗口关闭后仍然生效,默认值可在manifest.json中配置。
参数:
- style (String) 可选 可取值: "UIStatusBarStyleDefault":iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为黑字(适用于浅色背景); "UIStatusBarStyleBlackOpaque":深色背景色样式,iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为白色(适用于深色背景); "UIStatusBarStyleBlackTranslucent":iOS6及以下系统在启动界面为灰底白字,iOS7及以上系统与UIStatusBarStyleBlackOpaque效果一样。
返回值:
无
平台支持:
Android : 不支持 不支持设置系统状态栏样式。
iOS : 7.0+
WP : 不支持 不支持设置系统状态栏样式。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置系统状态栏样式为浅色文字
plus.navigator.setStatusBarStyle( "UIStatusBarStyleBlackOpaque" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置系统状态栏样式为浅色(白色)文字
</body>
</html>
getStatusBarStyle
获取系统状态栏样式
String plus.navigator.getStatusBarStyle();
说明:
获取应用在前台运行时系统状态栏的样式。
返回值:
系统状态栏的背景样式,可取值: "UIStatusBarStyleDefault":iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为黑字(适用于浅色背景); "UIStatusBarStyleBlackOpaque":深色背景色样式,iOS6及以下系统状态栏为黑底白字,iOS7及以上系统用于定义系统状态栏上文字颜色为白色(适用于深色背景); "UIStatusBarStyleBlackTranslucent":iOS6及以下系统在启动界面为灰底白字,iOS7及以上系统不会返回此值。
平台支持:
Android : 不支持 不支持获取系统状态栏样式。
iOS : 7.0+
WP : 不支持 不支持获取系统状态栏样式。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置系统状态栏背景为红色
var rgb = plus.navigator.getStatusBarBackground();
console.log( "StatusBarBackground: "+rgb );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置系统状态栏背景为红色
</body>
</html>
setUserAgent
设置userAgent值
void plus.navigator.setUserAgent( useragent, checkplus );
说明:
设置应用通过navigator.userAgent获取的值,及所有发起Http请求时提交的userAgent值。 如果要设置启动页面的userAgent值则需要在manifest.json中进行配置。
参数:
- useragent (String) 可选 要设置的新的userAgent值
- checkplus (Boolean) 可选 布尔类型,true表示检测并自动添加“Html5Plus”标识,false则不检测,默认值为true。 Html5Plus标识格式为Html5Plus/%version%,%version%为版本号,目前为1.0,如" Html5Plus/1.0"。
返回值:
无
平台支持:
Android : 2.2+
调用此方法不能更新已经创建好的Webview窗口的userAgent,在此之后创建的Webview窗口将使用新设置的userAgent值。 同时调用此方法的Webview窗口也能及时更新userAgent值。iOS : 4.5+
调用此方法不能更新已经创建好的Webview窗口的userAgent,在此之后创建的Webview窗口将使用新设置的userAgent值。 调用此方法的Webview窗口同样不能更新userAgent值。示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置userAgent
plus.navigator.setUserAgent( "Application/HelloWorld" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置userAgent为“Application/HelloWorld”
</body>
</html>
getUserAgent
获取userAgent值
String plus.navigator.getUserAgent();
说明:
获取userAgent值
返回值:
应用的userAgent值
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
// 获取应用的userAgent
function appUserAgent(){
alert( plus.navigator.getUserAgent() );
}
</script>
</head>
<body>
获取userAgent值<br/>
<buttong onclick="appUserAgent()">Get userAgent</buttong>
</body>
</html>
setCookie
设置Cookie值
void plus.navigator.setCookie( url, value );
说明:
设置应用发起Http请求时提交的cookie值,调用此接口后所有的请求都生效。
参数:
- url (String) 可选 要设置的cookie所属的网络地址
- value (String) 可选 cookie值的格式必需符合RFC2109中定义的SET-COOKIE响应数据格式,如“test=123; expires=Friday,24-Jan-2014 16:24:36 GMT; path=/”。
返回值:
无
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
// 设置cookie
plus.navigator.setCookie( "http://www.dcloud.io/", "test=123; expires=Friday,24-Jan-2015 16:24:36 GMT; path=/" );
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
</script>
</head>
<body>
设置cookie
</body>
</html>
getCookie
获取Cookie值
String plus.navigator.getCookie( url );
说明:
获取Cookie值
参数:
- url (String) 可选 要获取的cookie所属的网络地址
返回值:
Cookie值
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
// 获取Cookie
function getCookie(){
alert( plus.navigator.getCookie('http://www.dcloud.io/') );
}
</script>
</head>
<body>
获取Cookie值<br/>
<buttong onclick="getCookie()">Get Cookie</buttong>
</body>
</html>
removeAllCookie
删除应用所有Cookie值
void plus.navigator.removeAllCookie();
说明:
删除应用所有Cookie值
返回值:
无
平台支持:
Android : 2.2+
iOS : 4.5+
WP : 不支持 不支持删除cookie值。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
// 清除应用的所有Cookie
function clearCookie(){
plus.navigator.removeAllCookie();
}
</script>
</head>
<body>
删除应用所有Cookie值<br/>
<buttong onclick="clearCookie()">Clear Cookie</buttong>
</body>
</html>
removeCookie
删除应用Cookie
void plus.navigator.removeCookie( url );
说明:
删除应用Cookie
参数:
- url (String) 可选 要删除cookie所属的网络地址
返回值:
无
平台支持:
Android : 不支持 不支持删除指定网络地址的cookie值。
iOS : 4.5+
WP : 不支持 不支持删除cookie值。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
// 删除应用的Cookie
function removeCookie(){
plus.navigator.removeCookie( "http://www.dcloud.io/" );
}
</script>
</head>
<body>
删除应用Cookie<br/>
<buttong onclick="removeCookie()">Remove Cookie</buttong>
</body>
</html>
removeSessionCookie
删除应用所有会话期Cookie值
void plus.navigator.removeSessionCookie();
说明:
删除应用所有会话期Cookie值
返回值:
无
平台支持:
Android : 2.2+
iOS : 4.5+
WP : 不支持 不支持删除cookie值。
示例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>navigator Example</title>
<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
// 清除应用的所有会话期Cookie
function clearCookie(){
plus.navigator.removeSessionCookie();
}
</script>
</head>
<body>
删除应用所有会话期Cookie值<br/>
<buttong onclick="clearCookie()">Clear Cookie</buttong>
</body>
</html>