已定稿
感谢Dcloud等1人做出了贡献
常见问题 我要提意见 赞(196)

Navigator

navigator用于管理浏览器运行环境信息

方法:

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 );

说明:

设置应用在全屏模式显示时,将隐藏系统状态栏,通常游戏类应用才会设置为全屏模式显示。

参数:

返回值:

示例:

<!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获取分析日志)。

参数:

返回值:

平台支持:

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 );

说明:

设置应用在前台运行时系统状态栏的背景颜色,默认使用系统的白色背景。

参数:

返回值:

平台支持:

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中配置。

参数:

返回值:

平台支持:

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中进行配置。

参数:

返回值:

平台支持:

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值,调用此接口后所有的请求都生效。

参数:

返回值:

示例:

<!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值

参数:

返回值:

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

参数:

返回值:

平台支持:

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>