原码如下:
window.addEventListener("activTap:userCenter", getUserCenterWebView);
function getUserCenterWebView()
{
var tab=document.getElementsByTagName("nav")[0];
var a=tab.children;
for(var i=0; i<a.length; i++)
{
var link=a[i].href;
var cName=a[i].className;
var id=link.split("/");
id=id[id.length-1];
if(id=="userCenter.html")
{
a[i].className="mui-tab-item mui-active";
//这里展要示的窗口ID,但怎么刷新这个窗口请人帮忙plus.webview.show(id);
}else{
a[i].className="mui-tab-item";
plus.webview.hide(id);
}
}
}
4 个回复
jeaStone (作者)
自己瞎整在 plus.webview.show(id);
之后加了这么句话
plus.webview.getWebviewById(id).reload();
成功实现了刷新,但是怎么觉得这么别扭;
Danny - QQ125904483
http://www.dcloud.io/docs/api/zh_cn/webview.shtml#plus.webview.WebviewObject
jeaStone (作者)
你给的没有看明白,他们那个我可以理解为重新加载了一个新的页面吗?和我想要的不一样啊!
2015-06-04 14:07
jeaStone (作者)
<!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>
jeaStone (作者)
感觉没有帮助到我,这样重新拼写个页面我觉得这工作量无形放大啊!
2015-06-04 14:09
又起风了
我也碰到这个问题,现在使用自定义事件的方式处理。想问问还有没有更官方、更优雅的做法?