<script type="text/javascript" charset="utf-8">
var senurl = decodeURI(getQueryString('senurl'));
var code = senurl.split("|");
var tit = code[0];
tit = tit != '' ? tit : '外部url';
var headertit = $('.header-title > h1');
headertit.html(tit);//从链接中取得传过来的tit值
var urls = code[1].toString();
var ws=null,embed=null;
// 扩展API加载完毕,现在可以正常调用扩展API
function plusReady(){
ws=plus.webview.currentWebview();
ws.addEventListener('show',createEmbed(),false);
}
// 判断扩展API是否准备,否则监听"plusready"事件
if(window.plus){
plusReady();
}else{
document.addEventListener("plusready",plusReady,false);
}
// 创建子Webview
function createEmbed(){
var topoffset='45px';
if(plus.navigator.isImmersedStatusbar()){// 兼容immersed状态栏模式
topoffset=(Math.round(plus.navigator.getStatusbarHeight())+45)+'px';
}
plus.nativeUI.showWaiting('',{style:'black',modal:false,background:'rgba(0,0,0,0)'});
embed=plus.webview.create(''+urls+'','embed',{top:topoffset,bottom:'0px',position:'dock',dock:'bottom',bounce:'vertical'});
ws.append(embed);
embed.addEventListener('loaded',function(){
plus.nativeUI.closeWaiting();
//当页面加载完成,取得页面标题
var urltit = embed.getTitle();
//getURL 可取得加载的url地址
if(urltit != null) {
headertit.html(urltit);
}
},false);
embed.addEventListener('loading',function(){
plus.nativeUI.showWaiting('',{style:'black',modal:false,background:'rgba(0,0,0,0)'});
},false);
}
</script>
老火
- 发布:2016-04-14 18:16
- 更新:2016-04-14 18:47
- 阅读:1126
为什么下面的代码在ios下会无限打开子页面
分类:5+ SDK
2 个回复
老火 (作者)
在安卓下面是正常的
DCloud_IOS_XTY
这个逻辑不对吧每触发一次show就会调用一次
老火 (作者)
这个完全就是照着官方h5+里的代码复制过来的,在安桌上没得喃问题,在ios上就会不停的打开新的页面,一直到系统自动退出app,我试了一下如果是那个打开地址直接写在里面是正常的,如果是从上页传一个值过来就会有问题(传过的的值跟手动写在里的值是一样的)
2016-04-15 18:17
DCloud_IOS_XTY
上边的代码经测试未发现有题主说的问题,请提供可以复现问题的demo
2016-04-18 14:37