mui.openWindow 打不开新页面
2016-09-21 11:14
169 查看
用JS创建新的button,并给button添加点击事件,添加alert成功弹出,但是点击跳转到新的页面时跳转失败,一直跳转不过去。奇怪的是模拟器可以跳转,真机跳转过去。代码如下:
var button = document.createElement('button');
button.className = "mui-btn2 mui-btn-primary";
button.type = "button";
button.textContent = "详情";
sliderDiv.appendChild(button);
-----------------------------------------------------
button.addEventListener('tap', function() {
//mui.alert("查看本方案详情","提示",null,null);
mui.openWindow({
url: '../nearby/company_scheme_detail.html',
id: 'company_scheme_detail.html'
});
});
通过询问官方和其他各种尝试,最后发现mui.openWindow在该处没法使用。可能是我使用mui-popover和mui-card的原因,也可能是mui.openWindow无法调用html5内部接口。不过不管是什么原因,mui.openWindow方法是不能用了,但是我们依然要页面跳转呀,怎么办呢???
想了想那就用比较老的方法,在A页面关闭A页面,打开B页面。在B页面关闭B页面,打开新页面。
具体代码如下:
A页面
button.addEventListener('tap', function() {
plus.webview.currentWebview().hide();
plus.webview.open('../nearby/company_scheme_detail.html','company_scheme_detail.html');
});
B页面
首先去掉返回按钮class里面的"mui-action-back"
然后给返回按钮添加id="id"
重设点击事件:
document.getElementById("back").addEventListener('tap',function(){
plus.webview.currentWebview().hide();
plus.webview.open('../nearby/maps_company_detail.html','maps_company_detail.html');
});
以上能实现当mui.openWindow跳转不了时的点击跳转
不过以上方法也有两个不好的地方:
1.官方指出5+环境下使用,必须在plusready后使用有效。需要页面初始化,以上没有进行初始化不知道有没有什么隐患
2.跳转的动画比较突兀,和原先"mui-action-back"不一样。
以上就是本人尝试解决mui.openWindow 打不开新页面方法,如果大家有更好的意见欢迎提出并完善,谢谢~
ps:不太了解plus的童鞋,可以参考另一篇文章
HTML5+和MUI页面操作:http://blog.csdn.net/xuepan1994/article/details/51891923
var button = document.createElement('button');
button.className = "mui-btn2 mui-btn-primary";
button.type = "button";
button.textContent = "详情";
sliderDiv.appendChild(button);
-----------------------------------------------------
button.addEventListener('tap', function() {
//mui.alert("查看本方案详情","提示",null,null);
mui.openWindow({
url: '../nearby/company_scheme_detail.html',
id: 'company_scheme_detail.html'
});
});
通过询问官方和其他各种尝试,最后发现mui.openWindow在该处没法使用。可能是我使用mui-popover和mui-card的原因,也可能是mui.openWindow无法调用html5内部接口。不过不管是什么原因,mui.openWindow方法是不能用了,但是我们依然要页面跳转呀,怎么办呢???
想了想那就用比较老的方法,在A页面关闭A页面,打开B页面。在B页面关闭B页面,打开新页面。
具体代码如下:
A页面
button.addEventListener('tap', function() {
plus.webview.currentWebview().hide();
plus.webview.open('../nearby/company_scheme_detail.html','company_scheme_detail.html');
});
B页面
首先去掉返回按钮class里面的"mui-action-back"
然后给返回按钮添加id="id"
重设点击事件:
document.getElementById("back").addEventListener('tap',function(){
plus.webview.currentWebview().hide();
plus.webview.open('../nearby/maps_company_detail.html','maps_company_detail.html');
});
以上能实现当mui.openWindow跳转不了时的点击跳转
不过以上方法也有两个不好的地方:
1.官方指出5+环境下使用,必须在plusready后使用有效。需要页面初始化,以上没有进行初始化不知道有没有什么隐患
2.跳转的动画比较突兀,和原先"mui-action-back"不一样。
以上就是本人尝试解决mui.openWindow 打不开新页面方法,如果大家有更好的意见欢迎提出并完善,谢谢~
ps:不太了解plus的童鞋,可以参考另一篇文章
HTML5+和MUI页面操作:http://blog.csdn.net/xuepan1994/article/details/51891923
相关文章推荐
- mui 每次页面跳转用mui.openWindow会不会占用很大内存?
- javascript 打开页面window.location和window.open的区别
- 新窗口window.open() url不显示参数,后面页面可以接收参数 ——后面页面为html
- C#中怎么外理window.open() 第二次打开页面时不运行PageLoad()事件
- window.open页面关闭后刷新父页面
- iframe和父页,window.open打开页面之间的引用
- JS 用window.open()函数,父级页面如何取到子级页面的返回值
- chrome 拦截 window.open弹出页面
- location和window.open的小结--(获取url里的各种玩意以及页面)
- window.open 在子页面取值问题,做下笔记。
- 使用window.open()方法打开新页面,被浏览器拦截问题
- Window.Open 页面缓存问题
- js window.open 打开页面并居中
- 完好用户体验: 活用window.location与window.open解决页面跳转问题
- window.open打开页面窗口大小调整及置于页面最前面
- 打开新页面的想法,代替window.open()有时会被浏览器阻拦的
- 「转载」window.open详解(javascript弹出页面)
- 用window.open()方法打开的页面 获取到父页面 属性的值
- window.open页面关闭后刷新父页面
- JS 用window.open()函数,父级页面如何取到子级页面的返回值?