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

Webview

Webview模块管理应用窗口界面,实现多窗口的逻辑控制管理操作。通过plus.webview可获取应用界面管理对象。

方法:

对象:

回调方法:

all

获取所有Webview窗口

Array[WebviewObject] plus.webview.all();

说明:

获取应用中已创建的所有Webview窗口,包括所有未显示的Webview窗口。 返回WebviewObject对象数组中其打开先后顺序排列,即数组中第一个WebviewObject对象用是加载应用的入口页面。

返回值:

应用中创建的所有Webview窗口对象数组。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
	// 获取所有Webview窗口
	var wvs=plus.webview.all();
	for(var i=0;i<wvs.length;i++){
		console.log("webview"+i+": "+wvs[i].getURL());
	}
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
	获取所有Webview窗口
	</body>
</html>

close

关闭Webview窗口

void plus.webview.close( id_wvobj, aniClose, duration );

说明:

关闭已经打开的Webview窗口,需先获取窗口对象或窗口id,并可指定关闭窗口的动画及动画持续时间。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}

// 关闭自身窗口
function closeme(){
	var ws=plus.webview.currentWebview();
	plus.webview.close(ws);
}
	</script>
	</head>
	<body>
		关闭Webview窗口<br/>
		<button onclick="closeme()">close</button>
	</body>
</html>

create

创建新的Webview窗口

WebviewObject plus.webview.create( url, id, styles, extras );

说明:

创建Webview窗口,用于加载新的HTML页面,可通过styles设置Webview窗口的样式,创建完成后需要调用show方法才能将Webview窗口显示出来。

参数:

返回值:

Webview窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}

// 创建并显示新窗口
function create(){
	var w = plus.webview.create( "http://weibo.com/dhnetwork" );
	w.show(); // 显示窗口
}
	</script>
	</head>
	<body>
		创建新的Webview窗口<br/>
		<button onclick="create()">Create</button>
	</body>
</html>

currentWebview

获取当前窗口的WebviewObject对象

WebviewObject plus.webview.currentWebview();

说明:

获取当前页面所属的Webview窗口对象。

返回值:

Webview窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
	var ws=plus.webview.currentWebview();
	console.log( "当前Webview窗口:"+ws.getURL() );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		获取自身Webview窗口
	</body>
</html>

getWebviewById

查找指定标识的WebviewObject窗口

WebviewObject plus.webview.getWebviewById( id );

说明:

在已创建的窗口列表中查找指定标识的Webview窗口并返回。 若没有查找到指定标识的窗口则返回null,若存在多个相同标识的Webview窗口,则返回第一个创建的Webview窗口。 如果要获取应用入口页面所属的Webview窗口,其标识为应用的%APPID%,可通过plus.runtime.appid获取。

参数:

返回值:

WebviewObject窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
	// 查找应用首页窗口对象
	var h=plus.webview.getWebviewById( plus.runtime.appid );
	console.log( "应用首页Webview窗口:"+h.getURL() );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		查找指定标识的窗口
	</body>
</html>

getLaunchWebview

获取应用首页WebviewObject窗口对象

WebviewObject plus.webview.getLaunchWebview();

说明:

获取应用首页WebviewObject窗口对象

返回值:

WebviewObject窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
	// 获取应用首页窗口对象
	var h=plus.webview.getLaunchWebview();
	console.log( "应用首页Webview窗口:"+h.getURL() );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		获取应用首页WebviewObject窗口对象
	</body>
</html>

hide

隐藏Webview窗口

void plus.webview.hide( id_wvobj, aniHide, duration );

说明:

根据指定的WebviewObject对象或id隐藏Webview窗口,使得窗口不可见。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}

// 隐藏自身窗口
function hideeme(){
	plus.webview.hide( plus.webview.currentWebview() );
}
	</script>
	</head>
	<body>
		隐藏Webview窗口<br/>
		<button onclick="hideeme()">Hide</button>
	</body>
</html>

open

创建并打开Webview窗口

WebviewObject plus.webview.open( url, id, styles, aniShow, duration, showedCB );

说明:

创建并显示Webview窗口,用于加载新的HTML页面,可通过styles设置Webview窗口的样式,创建完成后自动将Webview窗口显示出来。

参数:

返回值:

WebviewObject窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}

// 创建并显示新窗口
function openWebview(){
	var w = plus.webview.open( "http://weibo.com/dhnetwork" );
}
	</script>
	</head>
	<body>
		打开Webview窗口<br/>
		<button onclick="openWebview()">Open</button>
	</body>
</html>

show

显示Webview窗口

void plus.webview.show( id_wvobj, aniShow, duration, showedCB );

说明:

显示已创建或隐藏的Webview窗口,需先获取窗口对象或窗口id,并可指定显示窗口的动画及动画持续时间。

参数:

返回值:

Webview窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}

// 创建并显示新窗口
function create(){
	var w = plus.webview.create( "http://weibo.com/dhnetwork" );
	plus.webview.show( w ); // 显示窗口
}
	</script>
	</head>
	<body>
		显示Webview窗口<br/>
		<button onclick="create()">Create</button>
	</body>
</html>

AnimationTypeShow

一组用于定义页面或控件显示动画效果

AnimationTypeClose

一组用于定义页面或控件关闭的动画效果

WebviewObject

Webview窗口对象,用于操作加载HTML页面的窗口

方法:

事件:

属性:

addEventListener

添加事件监听器

wobj.addEventListener( event, listener, capture );

说明:

向Webview窗口添加事件监听器,当指定的事件发生时,将触发listener函数的执行。 可多次调用此方法向Webview添加多个监听器,当监听的事件发生时,将按照添加的先后顺序执行。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}

var nw=null;
// 监听Webview窗口事件
function eventTest() {
	if(nw){return;}
	var w=plus.nativeUI.showWaiting()
	// 打开新窗口
	nw=plus.webview.create( "http://weibo.com/dhnetwork" );
	nw.addEventListener( "loaded", function(){
		console.log( "New Window loaded!" );
		nw.show(); // 显示窗口
		w.close();
		w=null;
	}, false );
}
	</script>
	</head>
	<body>
		添加事件监听器<br/>
		<button onclick="eventTest()">Event Listener</button>
	</body>
</html>

append

在Webview窗口中添加子窗口

void wobj.append( webview );

说明:

将另一个Webview窗口作为子窗口添加到当前Webview窗口中,添加后其所有权归父Webview窗口,当父窗口关闭时子窗口自动关闭。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		在Webview窗口中添加子窗口
		<button onclick="plus.webview.currentWebview().close();">Back</button>
	</body>
</html>

appendJsFile

添加Webview窗口预加载js文件

wobj.appendJsFile( file );

说明:

对于一些网络HTML页面,在无法修改HTML页面时可通过此方法自动加载本地js文件。 当Webview窗口跳转到新页面时也会自动加载指定的js执行,添加多个js文件将按照添加的先后顺序执行。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
// H5 plus事件处理
function plusReady(){
	var nw=plus.webview.create("http://weibo.com/dhnetwork");
	nw.appendJsFile("_www/preload.js");
	nw.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		添加Webview窗口预加载js文件
	</body>
</html>

back

后退到上次加载的页面

void wobj.back();

说明:

Webview窗口历史记录操作,后退到窗口上次加载的HTML页面。 如果窗口历史记录中没有可后退的页面则不触发任何操作。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 返回上次页面
function goBack() {
	embed.back();
}
// 前进到上次页面
function goForward() {
	embed.forward();
}
	</script>
	</head>
	<body>
		后退到上次加载的页面
		<button onclick="goBack()">Back</button>
		<button onclick="goForward()">Forward</button>
	</body>
</html>

canBack

查询Webview窗口是否可后退

void wobj.canBack( queryCallback );

说明:

Webview窗口历史记录查询操作,获取Webview是否可后退到历史加载的页面,结果通过queryCallback回调方法返回。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 是否可后退
function canBack() {
	embed.canBack( function(e){
		console.log( "是否可返回:"+e.canBack );
	});
}
	</script>
	</head>
	<body>
		查询Webview窗口是否可后退
		<button onclick="canBack()">canBack</button>
	</body>
</html>

canForward

查询Webview窗口是否可前进

void wobj.canForward( queryCallback );

说明:

Webview窗口历史记录查询操作,获取Webview是否可前进到历史加载的页面,结果通过queryCallback回调方法返回。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 是否可前进
function canForward() {
	embed.canForward( function(e){
		console.log( "是否可前进:"+e.canForward );
	});
}
	</script>
	</head>
	<body>
		查询Webview窗口是否可前进
		<button onclick="canForward()">canForward</button>
	</body>
</html>

children

获取Webview窗口的所有子Webview窗口

Array[WebviewObject] wobj.children();

说明:

获取添加到Webview窗口中的所有子Webview窗口,如果没有子Webview窗口则返回空数组。

返回值:

包含的子Webview窗口对象数组,没有则返回空数组。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 获取子Webview窗口
function listChildren() {
	var list=plus.webview.currentWebview().children();
	for(var i=0;i<list.length;i++){
		console.log( "Children["+i+"]: "+list[i].getURL() );
	}
}
	</script>
	</head>
	<body>
		获取Webview窗口的所有子Webview窗口
		<button onclick="listChildren()">Children</button>
	</body>
</html>

clear

清空原生Webview窗口加载的内容

void wobj.clear();

说明:

清除原生窗口的内容,用于重置原生窗口加载的内容,清除其加载的历史记录等内容。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 清空Webview窗口
function webviewClear() {
	embed.clear();
}
	</script>
	</head>
	<body>
		清空原生Webview窗口加载的内容
		<button onclick="webviewClear()">Clear</button>
	</body>
</html>

close

关闭Webview窗口

void wobj.close( aniClose, duration );

说明:

关闭并销毁Webview窗口,可设置关闭动画和动画持续时间。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 关闭窗口
function closeMe() {
	ws.close();
}
	</script>
	</head>
	<body>
		关闭Webview窗口
		<button onclick="closeMe()">Close</button>
	</body>
</html>

evalJS

在Webview窗口中执行JS脚本

void wobj.evalJS( js );

说明:

将JS脚本发送到Webview窗口中运行,可用于实现Webview窗口间的数据通讯。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 在Webview窗口中执行JS脚本
function evalJS() {
	embed.evalJS("alert('evalJS: '+location.href);");
}
	</script>
	</head>
	<body>
		在Webview窗口中执行JS脚本
		<button onclick="evalJS()">evalJS</button>
	</body>
</html>

forward

前进到上次加载的页面

void wobj.forward();

说明:

Webview窗口历史记录操作,前进到窗口上次加载的HTML页面。 如果窗口历史记录中没有可前进的页面则不触发任何操作。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var embed=null;
// H5 plus事件处理
function plusReady(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	plus.webview.currentWebview().append( embed );
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 返回上次页面
function goBack() {
	embed.back();
}
// 前进到上次页面
function goForward() {
	embed.forward();
}
	</script>
	</head>
	<body>
		前进到上次加载的页面
		<button onclick="goBack()">Back</button>
		<button onclick="goForward()">Forward</button>
	</body>
</html>

getStyle

获取Webview窗口的样式

WebviewStyle wobj.getStyle();

说明:

获取Webview窗口的样式属性,如窗口位置、大小等信息。

返回值:

WebviewStyle对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 获取Webview窗口的样式
function getStyle() {
	var style=ws.getStyle();
	alert( JSON.stringify(style) );
}
	</script>
	</head>
	<body>
		获取Webview窗口的样式
		<button onclick="getStyle()">getStyle</button>
	</body>
</html>

getTitle

获取Webview窗口加载HTML页面的标题

String wobj.getTitle();

说明:

标题为HTML页面head节点下title节点中的文本内容,当窗口内容发生页面内跳转时可通过窗口触发的“loaded”事件中调用此方法来获取跳转后页面的标题。 如果HTML页面没有使用title节点来设置标题,则返回空字符串。

返回值:

窗口加载页面的标题

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 获取Webview窗口的标题
function getTitle() {
	alert( "标题为:"+embed.getTitle() );
}
	</script>
	</head>
	<body>
		获取Webview窗口加载HTML页面的标题
		<button onclick="getTitle()">getTitle</button>
	</body>
</html>

getURL

获取Webview窗口加载HTML页面的地址

String wobj.getURL();

说明:

当窗口内容发生页面内跳转时可通过窗口触发的“loaded”事件中调用此方法来获取跳转后页面的地址。

返回值:

窗口加载页面的URL地址

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 获取Webview窗口加载HTML页面的地址
function getURL() {
	alert( "页面地址为:"+embed.getURL() );
}
	</script>
	</head>
	<body>
		获取Webview窗口加载HTML页面的地址
		<button onclick="getURL()">getURL</button>
	</body>
</html>

hide

隐藏Webview窗口

void wobj.hide( aniHide, duration );

说明:

隐藏Webview窗口可保存已加载HTML页面的上下文数据,能降低应用使用的系统资源,通过show方法可将隐藏的Webview窗口显示出来。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 隐藏Webview窗口
function hideWebview() {
	embed.hide();
}
	</script>
	</head>
	<body>
		隐藏Webview窗口
		<button onclick="hideWebview()">hide</button>
	</body>
</html>

isVisible

查询Webview窗口是否可见

Boolean wobj.isVisible();

说明:

若Webview窗口已经显示则返回true,若Webview窗口被隐藏则返回false。

返回值:

Webview窗口是否可见

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 查询Webview窗口是否可见
function visibleWebview() {
	alert( "是否可见:"+embed.isVisible() );
}
// 隐藏Webview窗口
function hideWebview() {
	embed.hide();
}
	</script>
	</head>
	<body>
		查询Webview窗口是否可见
		<button onclick="visibleWebview()">isVisible</button>
		<button onclick="hideWebview()">hide</button>
	</body>
</html>

loadData

加载新HTML数据

void wobj.loadData( data );

说明:

触发Webview窗口加载HTML页面数据,如果HTML数据无效将导致页面加载失败。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 加载新HTML数据
function loadHtmlData() {
	embed.loadData( '<html><body>Hello! loadData!</body></html>' );
}
	</script>
	</head>
	<body>
		加载新HTML数据
		<button onclick="loadHtmlData()">loadData</button>
	</body>
</html>

loadURL

加载新URL页面

void wobj.loadURL( url );

说明:

触发Webview窗口从新的URL地址加载页面,如果url地址无效将导致页面显示失败。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 加载新URL页面
function loadHtmlUrl() {
	embed.loadURL( 'http://m.csdn.net/' );
}
	</script>
	</head>
	<body>
		加载新URL页面
		<button onclick="loadHtmlUrl()">loadURL</button>
	</body>
</html>

nativeInstanceObject

获取Webview窗口对象的原生(Native.JS)实例对象

InstanceObject wobj.nativeInstanceObject();

说明:

Android平台返回Webview窗口对象的android.webkit.Webview实例对象, iOS平台返回Webview窗口对象的UIWebview实例对象。

返回值:

Webview窗口对象的原生(Native.JS)实例对象。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var nws=null;
// H5 plus事件处理
function plusReady(){
	// 获取当前Webview实例的原生(Native.JS)实例对象
	nws=plus.webview.currentWebview().nativeInstanceObject();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		获取Webview窗口对象的原生(Native.JS)实例对象
	</body>
</html>

opened

获取在当前Webview窗口中创建的所有窗口

Array[WebviewObject] wobj.opened();

说明:

返回从当前Webview中调用plus.webview.open或plus.webview.create创建的所有Webview窗口数组。

返回值:

此窗口创建的Webview窗口对象数组,没有则返回空数组。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 获取在当前Webview窗口中创建的所有窗口
function openedWebview() {
	var list=ws.opened();
	for(var i=0;i<list.length;i++){
		alert( "opened["+i+"]: "+list[i].getURL() );
	}
}
	</script>
	</head>
	<body>
		获取在当前Webview窗口中创建的所有窗口
		<button onclick="openedWebview()">opened</button>
	</body>
</html>

opener

获取当前Webview窗口的创建者

WebviewObject wobj.opener();

说明:

创建者为调用plus.webview.open或plus.webview.create方法创建当前窗口的Webview窗口。

返回值:

创建当前窗口的Webview窗口对象

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 取当前Webview窗口的创建者
function openerWebview() {
	var wo=embed.opener();
	alert( "opener: "+wo.getURL() );
}
	</script>
	</head>
	<body>
		获取当前Webview窗口的创建者
		<button onclick="openerWebview()">opener</button>
	</body>
</html>

parent

获取当前Webview窗口的父窗口

WebviewObject wobj.parent();

说明:

Webview窗口作为子窗口添加(Webview.append)到其它Webview窗口中时有效,这时其它Webview窗口为父窗口。

返回值:

父Webview窗口对象,没有则返回null。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 获取当前Webview窗口的父窗口
function parentWebview() {
	var wp=embed.parent();
	alert( "parent: "+wp.getURL() );
}
	</script>
	</head>
	<body>
		获取当前Webview窗口的父窗口
		<button onclick="parentWebview()">parent</button>
	</body>
</html>

reload

重新加载Webview窗口显示的HTML页面

void wobj.reload( force );

说明:

触发Webview窗口重新加载当前显示的页面内容。 如果当前HTML页面未加载完则停止并重新加载,如果当前Webview窗口没有加载任何页面则无响应。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 重新加载Webview窗口显示的HTML页面
function reloadWebview() {
	embed.reload(true);
}
	</script>
	</head>
	<body>
		重新加载Webview窗口显示的HTML页面
		<button onclick="reloadWebview()">reload</button>
	</body>
</html>

resetBounce

重置Webview窗口的回弹位置

void wobj.resetBounce();

说明:

开启窗口回弹效果后,当窗口中展现的内容滚动到头(顶部或底部)时,再拖拽时窗口整体内容将跟随移动,松开后自动回弹到停靠位置。 这时需要调用此方法来重置窗口的回弹位置,窗口将采用动画方式回弹到其初始显示的位置。

返回值:

平台支持:

Android : 2.2+

iOS : 不支持

WP : 不支持

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	ws.setBounce({position:{top:"100px"},changeoffset:{top:"44px"}});
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 重置窗口回弹位置
function resetBounce(){
	ws.resetBounce();
}
	</script>
	</head>
	<body style="text-align:center;">
		<br/><br/><br/>
		设置Webview窗口的回弹效果<br/>
		回弹后显示停靠到44px的位置<br/><br/>
		<button onclick="resetBounce()">重置回弹位置</button>
		<br/><br/><br/>
		*暂仅支持顶部的回弹效果*
	</body>
</html>

remove

移除子Webview窗口

void wobj.remove( webview );

说明:

从当前Webview窗口移除指定的子Webview窗口,若指定的webview对象不是当前窗口的子窗口则无任何作用。 移除后子Webview窗口不会关闭,需要调用其close方法才能真正关闭并销毁。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 移除子Webview窗口
function removeWebview() {
	ws.remove(embed);
	embed.close();
}
	</script>
	</head>
	<body>
		移除子Webview窗口
		<button onclick="removeWebview()">remove</button>
	</body>
</html>

removeEventListener

移除Webview窗口事件监听器

void wobj.removeEventListener( event, listener );

说明:

从Webview窗口移除通过addEventListener方法添加的事件监听器,若没有查找到对应的事件监听器,则无任何作用。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.addEventListener( "loaded", embedLoaded, false );
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 页面跳转监听器
function embedLoaded(e){
	alert( "Loaded: "+embed.getURL() );
}
// 移除Webview窗口事件监听器
function removeEvent() {
	embed.removeEventListener( "loaded", embedLoaded );
}
	</script>
	</head>
	<body>
		移除Webview窗口事件监听器
		<button onclick="removeEvent()">removeEventListener</button>
	</body>
</html>

removeFromParent

从父窗口中移除

void wobj.removeFromParent();

说明:

从所属的父Webview窗口移除,如果没有父窗口,则无任何作用。 从父窗口中移除后子Webview窗口不会关闭,需要调用其close方法才能真正关闭并销毁。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 从父窗口中移除
function removeFromeWebview() {
	embed.removeFromParent();
	embed.close();
}
	</script>
	</head>
	<body>
		从父窗口中移除
		<button onclick="removeFromeWebview()">removeFromParent</button>
	</body>
</html>

setBounce

设置Webview窗口的回弹效果

void wobj.setBounce( style );

说明:

开启窗口回弹效果后,当窗口中展现的内容滚动到头(顶部或底部)时,再拖拽时窗口整体内容将跟随移动,松开后自动回弹到停靠位置(可通过style设置)。 拖拽窗口内容时页面显示Webview窗口的背景色,默认为透明,此时显示Webview下面的内容,利用这个特点可以实现自定下拉刷新特效。

参数:

返回值:

平台支持:

Android : 2.2+

iOS : 不支持

WP : 不支持

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	ws.setBounce({position:{top:"100px"},changeoffset:{top:"0px"}});
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body style="text-align:center;">
		<br/><br/><br/>
		设置Webview窗口的回弹效果<br/><br/><br/>
		*暂仅支持顶部的回弹效果*
	</body>
</html>

setBlockNetworkImage

设置Webview窗口是否阻塞加载页面中使用的网络图片

void wobj.setBlockNetworkImage( block );

说明:

设置Webview窗口是否阻塞加载页面中使用的网络图片

参数:

返回值:

平台支持:

Android : 2.2+

iOS : 不支持

WP : 不支持

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null;
// H5 plus事件处理
function plusReady(){
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
function blockOpen(){
	// 阻塞网络图片模式打开页面
	var w=plus.webview.create("http://m.csdn.net/","csdn",{blockNetworkImage:true});
	w.addEventListener("loaded",function(){
		w.show("slide-in-right",300);
		// 加载网络图片
		w.setBlockNetworkImage(false);
	},false);
}
	</script>
	</head>
	<body>
		显示窗口后再加载网络图片<br/>
		<button onclick="blockOpen()">打开页面</button>
	</body>
</html>

setContentVisible

设置HTML内容是否可见

void wobj.setContentVisible( visible );

说明:

设置HTML内容不可见后,将显示Webview窗口的背景色。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 设置HTML内容是否可见
function setContentVisible(v) {
	embed.setContentVisible(v);
}
	</script>
	</head>
	<body>
		设置HTML内容是否可见
		<button onclick="setContentVisible(true)">可见</button>
		<button onclick="setContentVisible(false)">不可见</button>
	</body>
</html>

setPullToRefresh

设置Webview窗口的下拉刷新效果

void wobj.setPullToRefresh( style, refreshCB );

说明:

开启Webview窗口的下拉刷新功能,显示窗口内置的下拉刷新控件样式。

参数:

返回值:

平台支持:

Android : 2.2+

iOS : ALL

WP : 不支持

示例:

<!DOCTYPE HTML>
<html>
	<head>
		<meta charset="utf-8"/>
		<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
		<meta name="HandheldFriendly" content="true"/>
		<meta name="MobileOptimized" content="320"/>
		<title>Webview Example</title>
		<script type="text/javascript" charset="utf-8">
var ws=null;
var list=null;
// 扩展API加载完毕,现在可以正常调用扩展API 
function plusReady(){
	ws=plus.webview.currentWebview();
	ws.setPullToRefresh({support:true,
		height:"50px",
		range:"200px",
		contentdown:{
			caption:"下拉可以刷新"
		},
		contentover:{
			caption:"释放立即刷新"
		},
		contentrefresh:{
			caption:"正在刷新..."
		}
	},onRefresh);
	plus.nativeUI.toast("下拉可以刷新");
}
// 判断扩展API是否准备,否则监听"plusready"事件
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// DOM构建完成获取列表元素
document.addEventListener("DOMContentLoaded",function(){
	list=document.getElementById("list");
})
// 刷新页面
function onRefresh(){
	setTimeout(function(){
		if(list){
			var item=document.createElement("li");
			item.innerHTML="<span>New Item "+(new Date())+"</span>";
			list.insertBefore(item,list.firstChild);
		}
		ws.endPullToRefresh();
	},2000);
}
		</script>
		<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/>
		<style type="text/css">
li {
	padding: 1em;
	border-bottom: 1px solid #eaeaea;
}
li:active {
	background: #f4f4f4;
}
		</style>
	</head>
	<body>
		<ul id="list" style="list-style:none;margin:0;padding:0;">
			<li><span>Initializ List Item 1</span></li>
			<li><span>Initializ List Item 2</span></li>
			<li><span>Initializ List Item 3</span></li>
			<li><span>Initializ List Item 4</span></li>
			<li><span>Initializ List Item 5</span></li>
			<li><span>Initializ List Item 6</span></li>
			<li><span>Initializ List Item 7</span></li>
			<li><span>Initializ List Item 8</span></li>
			<li><span>Initializ List Item 9</span></li>
			<li><span>Initializ List Item 10</span></li>
		</ul>
	</body>
</html>

setStyle

设置Webview窗口的样式

void wobj.setStyle( styles );

说明:

更新Webview窗口的样式,如窗口位置、大小、背景色等。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 设置Webview窗口的样式
function updateStyle() {
	embed.setStyle( {top:"92px"} );
}
	</script>
	</head>
	<body>
		设置Webview窗口的样式
		<button onclick="updateStyle()">setStyle</button>
	</body>
</html>

setJsFile

设置预加载的JS文件

void wobj.setJsFile( path );

说明:

预加载JS文件不需要在HTML页面中显式引用,在Webview窗口加载HTML页面时自动加载,在页面跳转时也会自动加载。 设置新的JS文件后将清空之前设置的值。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.setJsFile( "_www/js/preload.js" );
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
	</script>
	</head>
	<body>
		设置预加载的JS文件
	</body>
</html>

show

显示Webview窗口

void wobj.show( aniShow, duration, showedCB );

说明:

当调用plus.webview.create方法创建Webview窗口后,需要调用其show方法才能显示,并可设置窗口显示动画及动画时间。 Webview窗口被隐藏后也可调用此方法来重新显示。

参数:

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 创建并显示Webview窗口
function showWebview(){
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.show( "slide-in-right", 300 );
}
	</script>
	</head>
	<body>
		显示Webview窗口
		<button onclick="showWebview()">show</button>
	</body>
</html>

stop

停止加载HTML页面内容

void wobj.stop();

说明:

触发Webview窗口停止加载页面内容,如果已经加载部分内容则显示部分内容,如果加载完成则显示全部内容。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 停止加载HTML页面内容
function stopWebview(){
	embed.stop();
}
	</script>
	</head>
	<body>
		停止加载HTML页面内容
		<button onclick="stopWebview()">stop</button>
	</body>
</html>

onclose

Webview窗口关闭事件

说明:

当Webview窗口关闭时触发此事件,类型为EventCallback。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.onclose=embedClose;
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 页面关闭事件回调函数
function embedClose(e){
	alert( "Closed!" );
}
	</script>
	</head>
	<body>
		Webview窗口关闭事件
		<button onclick="embed.close()">onclose</button>
	</body>
</html>

onerror

Webview窗口错误事件

说明:

当Webview窗口加载错误时触发此事件,类型为EventCallback。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.onerror=embedError;
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 页面错误事件回调函数
function embedError(e){
	alert( "Error!" );
}
	</script>
	</head>
	<body>
		Webview窗口错误事件
		<button onclick="embed.loadData('<xml>Not html</xml>')">onerror</button>
	</body>
</html>

onloaded

Webview窗口页面加载完成事件

说明:

当Webview窗口页面加载完成时触发此事件,类型为EventCallback。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.onloaded=embedLoaded;
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 页面加载完成事件回调函数
function embedLoaded(e){
	alert( "Loaded!" );
}
	</script>
	</head>
	<body>
		Webview窗口页面加载完成事件
		<button onclick="embed.loadURL('http://m.csdn.net')">onloaded</button>
	</body>
</html>

onloading

Webview窗口页面开始加载事件

说明:

当Webview窗口开始加载新页面时触发此事件,类型为EventCallback。

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8">
	<title>Webview Example</title>
	<script type="text/javascript">
var ws=null,embed=null;
// H5 plus事件处理
function plusReady(){
	ws=plus.webview.currentWebview();
	embed=plus.webview.create("http://weibo.com/dhnetwork","",{top:"46px",bottom:"0px"});
	embed.onloading=embedLoading;
	ws.append(embed);
}
if(window.plus){
	plusReady();
}else{
	document.addEventListener("plusready",plusReady,false);
}
// 页面开始加载事件回调函数
function embedLoading(e){
	alert( "Loading!" );
}
	</script>
	</head>
	<body>
		Webview窗口页面开始加载事件
		<button onclick="embed.loadURL('http://m.csdn.net')">onloading</button>
	</body>
</html>

WebviewBounceStyle

Webview窗口回弹样式

属性:

WebviewDock

原生控件在窗口中停靠的方式

常量:

"top"

控件停靠则页面顶部

说明:

控件停靠则页面顶部

"bottom"

控件停靠在页面底部

说明:

控件停靠在页面底部

"right"

控件停靠在页面右侧

说明:

控件停靠在页面右侧

"left"

控件停靠在页面左侧

说明:

控件停靠在页面左侧

WebviewEvent

Webview窗口事件

常量:

"close"

Webview窗口关闭事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口关闭时触发此事件,回调函数类型为EventCallback。

"dragBounce"

Webview窗口回弹事件

说明:

通过WebviewObject对象的setBounce方法开启回弹效果后,当用户拖拽窗口时触发发此事件,回调函数类型为BounceEventCallback。

"error"

Webview窗口加载错误事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口加载错误时触发此事件,回调函数类型为EventCallback。

"hide"

Webview窗口隐藏事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口隐藏(窗口动画完成后)时触发此事件,回调函数类型为EventCallback。

"loading"

Webview窗口页面开始加载事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口开始加载新页面时触发此事件,回调函数类型为EventCallback。

"loaded"

Webview窗口页面加载完成事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口页面加载完成时触发此事件,回调函数类型为EventCallback。

"maskClick"

Webview窗口显示遮罩层时点击事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口通过mask属性设置显示遮罩层并且点击时触发此事件,回调函数类型为EventCallback。

"show"

Webview窗口显示事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口显示(窗口动画完成后)时触发此事件,回调函数类型为EventCallback。

"popGesture"

Webview窗口侧滑返回事件

说明:

通过WebviewObject对象的addEventListener方法添加事件监听函数,当Webview窗口侧滑返回时触发此事件,回调函数类型为PopGestureCallback。

平台支持:

Android : 不支持 不支持侧滑返回功能,不会触发此事件。

iOS : ALL

Webview设置侧滑返回功能才能触发此事件。

WP : 不支持 不支持侧滑返回功能,不会触发此事件。

WebviewRefreshStyle

Webview窗口下拉刷新样式

属性:

WebviewPosition

原生控件在窗口中显示的位置

常量:

"static"

控件在页面中正常定位,如果页面存在滚动条则随窗口内容滚动

说明:

控件在页面中正常定位,如果页面存在滚动条则随窗口内容滚动

"absolute"

控件在页面中绝对定位,如果页面存在滚动条不随窗口内容滚动

说明:

控件在页面中绝对定位,如果页面存在滚动条不随窗口内容滚动

"dock"

控件在页面中停靠,停靠的位置通过dock属性进行定义

说明:

控件在页面中停靠,停靠的位置通过dock属性进行定义

WebviewStyle

JSON对象,原生窗口设置参数的对象

属性:

WebviewTransform

一组用于定义页面或控件变形的属性

属性:

WebviewTransition

一组用于定义页面或控件转换效果的属性

属性:

BounceEventCallback

Webview窗口回弹事件的回调函数

void onEvent( Event event ){
	// Event handled code.
}

说明:

Webview窗口回弹事件的回调函数

参数:

EventCallback

Webview窗口事件的回调函数

void onEvent( Event event ){
	// Event handled code.
}

说明:

Webview窗口事件的回调函数

参数:

PopGestureCallback

Webview窗口侧滑事件的回调函数

void onEvent( PopGestureEvent event ){
	// Event handled code.
}

说明:

Webview窗口侧滑事件的回调函数

参数:

HistoryQueryCallback

历史记录记录查询的回调函数

void onQuery( Event event ) {
	// Event handled code.
}

说明:

历史记录记录查询的回调函数

参数:

SuccessCallback

Webview窗口操作成功回调函数

void onSuccess(){
	// Success code.
}

说明:

Webview窗口业务操作成功后触发回调函数。

ErrorCallback

Webview窗口操作失败回调函数

void onError(error){
	// Handle the error
	var code = error.code; // 错误编码
	var message = error.message; // 错误描述信息
}

说明:

Webview窗口操作失败回调函数

参数: