返回插件列表
MWebview
webview展示插件
分享功能特殊说明:
如果要使用QQ分享相关功能,请先添加mqq插件,mqq插件版本需要1.1.4+
如果要使用微信分享相关功能,请先添加mweixin插件,mweixin插件版本需要1.4.3+
如果要使用微博分享功能,请先添加mweibo插件,mweibo插件版本需要1.1.0+
API
1、打开webview
MWebview.open(params, callback,fail);
参数 |
类型 |
必填 |
作用 |
params |
JSON对象 |
是 |
参见params 结构说明 |
callback |
Function |
是 |
请参照调用示例 |
fail |
Function |
是 |
失败回调,格式为json对象 |
callback 结构说明
参数 |
类型 |
必填 |
作用 |
onOpen |
function |
是 |
打开回调 |
onClose |
function |
是 |
关闭回调 |
actionRefresh |
function |
否 |
刷新按钮点击回调 1.1.9版本开始生效
|
actionShare(result) |
function |
否 |
分享状态回调,result格式:{"shareType":"1/2/3/4/5/6 分享类型,请参照下方shareType 说明","code":"0/-1/999,0表示分享成功,-1表示分享失败,999表示用户取消分享"} 1.2.0版本开始生效 .iOS无微博分享回调 |
params 结构说明
参数 |
类型 |
必填 |
作用 |
url |
string |
是 |
要打开的url,支持网络html和本地html。 |
share |
JSON对象 |
否 |
分享参数,如果不传,分享按钮隐藏;详细结构参见share结构说明 |
navBar |
JSON对象 |
否 |
导航条设置,详细见navBar结构说明,,若此值不传,则认为隐藏导航栏,从1.2.1版本开始生效
|
isShowRefresh |
boolean |
否 |
是否显示刷新按钮,默认是true |
bindCallMethod |
string |
否 |
打开的webview中触发webView.closeWebview()方法从1.2.4开始,iOS因UIWebview切换成WkWebview,请调用window.webkit.messageHandlers.closeWebview.postMessage('params')去关闭iOS页面 后,原生返回原页面后将调用此方法 |
refresh |
JSON对象 |
否 |
右侧刷新按钮样式事件自定义,详细见refresh结构说明 1.1.1版本开始生效
|
showFloatReturn |
boolean |
否 |
是否显示悬浮返回按钮,true:显示,false:隐藏,默认false,1.2.1版本开始生效
|
floatReturnColor |
string |
否 |
悬浮返回按钮颜色设置,默认黑色,支持RGB,1.2.1版本开始生效
|
clearCookie |
boolean |
否 |
退出webview时是否清除传入url的cookie,true:清除,false:不清除,默认true清除。1.2.1版本开始生效
|
progressHide |
boolean |
否 |
进度条显示开关,true:隐藏进度条,false:显示进度条;默认显示。1.2.3版本开始生效
|
progressColor |
string |
否 |
webview进度条颜色;默认值:绿色1.2.3版本开始生效
|
showLoadFailView |
boolean |
否 |
展示webview加载失败提示视图,true:展示;false:不展示;默认false,从1.3.9版本开始生效
|
forceLandSpace |
boolean |
否 |
强制横屏,true:横屏展示,false:竖屏展示;默认竖屏。1.4.7版本开始生效
|
addImageLongPress |
boolean |
否 |
对远程链接里面的图片添加长按保存功能,true:添加长按保存功能,false:不添加;默认false。1.4.7版本开始生效
|
adjustSafeArea |
boolean |
否 |
适配浏海屏安全区域; true:webview, false:webview占满全屏; 默认true;仅支持iOS,1.6.7版本开始生效
|
- 注意事项:progressColor代替navBar字段中的barProgressColor、progressHide代替navBar字段中的barProgressHide,当前版本仍然会兼容navBar字段中的barProgressColor和barProgressHide,以后会废弃。
share 结构说明
参数 |
类型 |
必填 |
作用 |
title |
string |
是 |
分享标题 |
webpageUrl |
string |
否 |
要分享的网页url。若该字段不传或值为空,则自动获取webview当前加载的页面地址作为分享的url。 |
description |
string |
否 |
分享描述 |
thumbData |
string |
否 |
分享的缩略图,支持本地图片(传入本地图片的绝对路径)、网络图片(分享前将自动下载该图片,打开微信分享速度依网速而定) |
sortOrder |
Array |
否 |
分享界面按钮排序,如果没有指定,则默认[1,2,3,4,5,6],按微信好友、微信朋友圈、QQ好友、QQ空间、微博、复制链接顺序排列,shareType请参照下方说明 |
navBar 结构说明
参数 |
类型 |
必填 |
作用 |
barColor |
string |
否 |
导航条颜色或图片本地绝对路径或网络地址背景图片;默认值:白色。支持RGB或ARGB色值,下同; |
barButtonColor |
string |
否 |
导航条上的按钮颜色;默认值:灰色 |
barTitle |
string |
否 |
导航条标题内容;默认读取页面内的title值,如果barTitle设置过,则一直显示barTitle的值; |
barTitleColor |
string |
否 |
导航条标题颜色;默认值:黑色 |
barPosition |
int |
否 |
导航条位置;默认值:0 ;0:底部,1:顶部
|
barFontSize |
int |
否 |
导航条标题文字大小,默认18 1.1.2版本开始生效
|
refresh 结构说明 1.1.1版本开始生效
参数 |
类型 |
必填 |
作用 |
iconPath |
string |
否 |
刷新按钮图片路径(仅支持本地图片绝对路径) |
title |
string |
否 |
文字按钮(优先title,其次iconPath,建议不超过4个字) |
titleColor |
string |
否 |
刷新按钮标题颜色;默认值:黑色 |
url |
string |
否 |
如果url有值,则点击时跳转浏览器打开该url,否则刷新当前页面 |
fontSize |
int |
否 |
刷新按钮文字大小,默认16 1.1.2版本开始生效
|
target |
int |
否 |
url打开方式,1为webview中,2为浏览器,默认为2 1.1.3版本开始可用
|
shareType 说明
shareType |
类型 |
作用 |
1 |
int |
分享到微信好友枚举值,如果没有指定,则此功能隐藏;如果没有添加mweixin,此功能隐藏 |
2 |
int |
分享到微信朋友圈枚举值,如果没有指定,则此功能隐藏;如果没有添加mweixin,此功能隐藏 |
3 |
int |
分享到QQ好友枚举值,如果没有指定,则此功能隐藏;如果没有添加mqq,此功能隐藏 |
4 |
int |
分享到QQ空间枚举值,如果没有指定,则此功能隐藏;如果没有添加mqq,此功能隐藏 |
5 |
int |
分享到微博好友枚举值,如果没有指定,则此功能隐藏;如果没有添加mweibo,此功能隐藏 |
6 |
int |
复制链接,如果没有指定,则此功能隐藏 |
bindCallMethod 说明
A页面中以open方法打开B页面,B页面中h5主动触发webView.closeWebview()或者webView.closeWebview('params')从1.2.4开始,iOS因UIWebview切换成WkWebview,请调用window.webkit.messageHandlers.closeWebview.postMessage('params')去关闭iOS页面
后返回A页面,A页面中指定的bindCallMethod将执行,params仅支持一个参数,多参数时需以json形式传入。
bindCallMethod方法以字符串形式传入(如:'functionName')。
iOS中请
调用示例
function callMe(result){console.log('hello world!:',result);};
var navBar = {
"barColor":"#0f192b",
"barButtonColor":"#4d7ed8",
"barTitle":"hello,title",
"barTitleColor":"#4d7ed8",
"barPosition":0
};
var share = {
"webpageUrl":"http://www.baidu.com",
"title":"标题",
"description":"description",
"thumbData":"http://wwww.xxx.yyy/aaa.jpg",
"sortOrder":[1,2,3,4,5,6]
};
var params = {
"url":"http://www.baidu.com",
"share":share,
"navBar":navBar,
"bindCallMethod":"callMe"
};
var callback = {
"onOpen": function() {
console.log('开启webview');
},
"onClose": function() {
console.log('关闭webview');
},
"actionRefresh": function() {
console.log('刷新webview');
},
};
var error = function(err) {
console.log(err);
};
MWebview.open(params, callback, error);
2、打开webview ('1.2.4版本开始生效,iOS仅支持iOS9及以上系统')
MWebview.openWithAnimation(params, callback,fail);
参数 |
类型 |
必填 |
作用 |
params |
JSON对象 |
是 |
参见params 结构说明 |
callback |
Function |
是 |
请参照调用示例 |
fail |
Function |
是 |
失败回调,格式为json对象 |
params 结构说明
参数 |
类型 |
必填 |
作用 |
url |
string |
是 |
要打开的url |
imgPath |
string |
是 |
顶部图片路径 |
width |
float |
是 |
顶部图片初始显示宽 |
height |
float |
是 |
顶部图片初始显示高 |
x |
float |
是 |
图片点击左上角x坐标 |
y |
float |
是 |
图片点击左上角y坐标 |
bindCallMethod |
string |
否 |
打开的webview中触发webView.closeWebview()方法iOS因UIWebview切换成WkWebview,请调用window.webkit.messageHandlers.closeWebview.postMessage('params')去关闭iOS页面 后,原生返回原页面后将调用此方法 |
clearCookie |
boolean |
否 |
退出webview时是否清除传入url的cookie,true:清除,false:不清除,默认true清除。 |
share |
JSON对象 |
否 |
分享参数,如果不传,分享按钮隐藏;详细结构参见share结构说明1.4.0版本开始生效
|
navBar |
JSON对象 |
否 |
导航条设置,详细见navBar结构说明,导航栏只会出现在屏幕底部,若此值不传,则认为隐藏导航栏,若导航栏显示,右上角关闭按钮将会隐藏,1.4.0版本开始生效
|
progressHide |
boolean |
否 |
进度条显示开关,true:隐藏进度条,false:显示进度条;默认显示。若导航栏被隐藏,此参数无效,1.4.0版本开始生效
|
progressColor |
string |
否 |
webview进度条颜色;默认值:绿色若导航栏被隐藏,此参数无效,1.4.0版本开始生效
|
share 结构说明
参数 |
类型 |
必填 |
作用 |
title |
string |
是 |
分享标题 |
webpageUrl |
string |
否 |
要分享的网页url。若该字段不传或值为空,则自动获取webview当前加载的页面地址作为分享的url。 |
description |
string |
否 |
分享描述 |
thumbData |
string |
否 |
分享的缩略图,支持本地图片(传入本地图片的绝对路径)、网络图片(分享前将自动下载该图片,打开微信分享速度依网速而定) |
sortOrder |
Array |
否 |
分享界面按钮排序,如果没有指定,则默认[1,2,3,4,5,6],按微信好友、微信朋友圈、QQ好友、QQ空间、微博、复制链接顺序排列,shareType请参照下方说明 |
shareType 说明
shareType |
类型 |
作用 |
1 |
int |
分享到微信好友枚举值,如果没有指定,则此功能隐藏 |
2 |
int |
分享到微信朋友圈枚举值,如果没有指定,则此功能隐藏 |
3 |
int |
分享到QQ好友枚举值,如果没有指定,则此功能隐藏 |
4 |
int |
分享到QQ空间枚举值,如果没有指定,则此功能隐藏 |
5 |
int |
分享到微博好友枚举值,如果没有指定,则此功能隐藏 |
6 |
int |
复制链接,如果没有指定,则此功能隐藏 |
navBar 结构说明
参数 |
类型 |
必填 |
作用 |
barColor |
string |
否 |
导航条颜色或图片本地绝对路径或网络地址背景图片;默认值:白色。支持RGB或ARGB色值,下同; |
barButtonColor |
string |
否 |
导航条上的按钮颜色;默认值:灰色 |
barTitle |
string |
否 |
导航条标题内容;默认读取页面内的title值,如果barTitle设置过,则一直显示barTitle的值; |
barTitleColor |
string |
否 |
导航条标题颜色;默认值:黑色 |
barFontSize |
int |
否 |
导航条标题文字大小,默认18 |
调用示例
function callMe(result){console.log('hello world!:',result);};
var params = {
"url":"http://www.baidu.com",
"imgPath":cordova.file.applicationDirectory+'test.jpg',
"x":15,
"y":130,
"width":345,
"height":345,
"bindCallMethod":"callMe"
};
var callback = {
"onOpen": function() {
console.log('开启webview');
},
"onClose": function() {
console.log('关闭webview');
}
};
var error = function(err) {
console.log(err);
};
MWebview.openWithAnimation(params, callback, error);
3、获取支付宝h5支付的订单串 ('1.2.5版本开始生效')
MWebview.getAliPayOrderString(params, success,fail);
参数 |
类型 |
必填 |
作用 |
params |
JSON对象 |
是 |
参见params 结构说明 |
success |
Function |
是 |
请参照调用示例 |
fail |
Function |
是 |
失败回调,格式为json对象 |
params 结构说明
参数 |
类型 |
必填 |
作用 |
url |
string |
是 |
h5支付url |
调用示例
var params = {
"url":"https://openapi.alipay.com/gateway.do?app_id=2017120600414124&version=1.0&format=json×tamp=2018-06-08+02%3A57%3A35&sign_type=RSA2&method=alipay.trade.wap.pay¬ify_url=https%3A%2F%2Fapppb-test.myysq.com.cn%2Fownerappapi%2Fapi%2Falipay-call-back%3Fproj_id%3D39e12013-b22a-ec8d-9cf5-ba7311b116bc%26receipt_by%3D%26o%3Dretesting&return_url=https%3A%2F%2Fapppb-test.myysq.com.cn%2Fownerappapi%2Fbill-api%2Falipay-success%3Famount%3D0.02%26bill_id%3D39e6c792-4798-35eb-0c97-e3037b567d8c%26proj_id%3D39e12013-b22a-ec8d-9cf5-ba7311b116bc%26is_alipay%3D1%26o%3Dretesting&charset=utf-8&biz_content=%7B%22desc%22%3Anull%2C%22subject%22%3A%22%5Cu7a7a%5Cu4e2d%5Cu82b1%5Cu56ed-%5Cu4e00%5Cu671f-8%5Cu53f7%5Cu697c-1002%5Cu652f%5Cu4ed8%5Cu5e10%5Cu5355%22%2C%22out_trade_no%22%3A%2239e6f05c818b3b692b0fcd013f0d8766%22%2C%22total_amount%22%3A0.02%7D&sign=krKljOkZEgrthxmyOngYsUyb1f3l7jVrybyLWZQ6zaTjHm%2BBm67s9ArBATvxAZ4Yfgn7s0kWYZ8qWDa3XR2YnuTHCb%2BlBI%2Fws3Q2%2BLaZVfu9KVvUEhoenLMjgsQ7do9xjTEjNZwPM75XpW6JsN4AUBpt%2F9hl1n8sZn2vDOGCCuCT46hMhkdFd2vgg8dekaKeM2bd%2FxBLqWw205Dcr6hE%2F1Y6D9BMh9AnrT3srnTESbpTEXNsX4%2FSVUOnYzEj4XYktpq8gzva1MkZoKIS9dhLLM%2BhFINmSvNmGcK7jZ2TPOZ2Vr1Nx657omYnoyPFpkoKaFrkB%2F4V9i0aqleaIxdkDA%3D%3D",
};
var success = function (payUrl){
MZhifubao.payWithUrl(payUrl,function(x){console.log('sucess',x)},function(x){console.log('error',x)});
};
var error = function(err) {
console.log(err);
};
MWebview.getAliPayOrderString(params, success, error);