您的位置:首页 > 产品设计 > UI/UE

mui 在父子页面嵌套时,在子页面调起mask时,而父页面并没有被掩盖的问题

2018-02-11 14:14 225 查看
mui 在有父子页面嵌套的情况下,如底部导航栏;子页面调起遮罩蒙板mask,如使用alert、confirm等对话框时;父页面并没有被遮罩蒙板所覆盖。此种情况下可以通过自定义事件来通知父页面打开遮罩蒙板。

例:

父页面 parentPage.html

子页面 subPage.html

在subPage.html下:

//获取父页面的webview对象
var main = plus.webview.getWebviewById("parentPage.html");
//定义自定义事件openMask,通知父页面的打开遮罩蒙板
mui.fire(main, 'openMask', {});
mui.alert(MESSAGE, '订单超时', '去处理', function(e) {
//定义closeMask事件,通知父页面来关闭遮罩蒙板
mui.fire(main, 'closeMask', {});
业务逻辑.....

}, 'div');


在父页面parentPage.html下:

var flag = false;
//创建遮罩蒙板
var mask = mui.createMask(function() {
//设置点击蒙板不会自动消失
//但调用close方法关闭mask时,必须返回true
return flag;
});
//监听自定事件
//打开遮罩蒙板
window.addEventListener("openMask", function(e) {
mask.show(); //显示遮罩
});
//关闭遮罩蒙板
window.addEventListener("closeMask", function(e) {
flag = true;
mask.close();
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息