|
[插件开发]
api.historyBack一直返回false.
[复制链接]
//index.html
function onSearch(){
api.openWin({
name: 'search',
url: './ktsearch.html',
allowEdit:true
});
}
//ktsearch.html
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<link rel="stylesheet" type="text/css" href="../css/common.css">
<link rel="stylesheet" type="text/css" href="../css/ads.css">
<link rel="stylesheet" type="text/css" href="../css/api.css"/>
<script type="text/javascript" src="../script/jquery-2.1.4.min.js"></script>
<script type="text/javascript" src="../script/api.js"></script>
<script type="text/javascript" src="../script/ktutility.js"></script>
</head>
<body>
<header class="ad-header" id="header" style="overflow:hidden;height:4.1em;line-height:2.2em;">
<div tapmode="tapover-opacity" class="back"><img src="../images/back.png"></div>
<div id='title'>热门搜索</div>
<div tapmode="tapover-opacity" class="head_alter save" id="action" style="display:none;">编辑</div>
<div class="progressbar"></div>
</header>
<script type="text/javascript">
var searchHome = "http://weixin**.**/";
var bugFixPageUrl = "http://mp.weixin**.**/s";
var currentPage={title:'', url:'', urlLocked:false, complete:true};
apiready = function(){
var winHeaderHeight = initWinHeader();
api.openFrame({
name: getFrameName(),
url: searchHome,
allowEdit:true, //*FIXME: WHY
rect: {
x: 0,
y: winHeaderHeight,
w: 'auto',
h: 'auto'
},
});
api.setFrameClient({
frameName:getFrameName()
}, function(ret,err){
loadPage(ret);
});
}
function loadPage(pageInfo) {
alert(JSON.stringify(pageInfo));
switch(pageInfo.state){
case 0://starting a new page(newly loading or back loading)
if **.**plete){
currentPage.title = '';
currentPage.url = (pageInfo.url ? pageInfo.url : '');
currentPage.urlLocked = false;
**.**plete = false;
}else{
}
break;
case 1:
$(".progressbar").css({"width":pageInfo.progress+'%'});
break;
case 2://complete with url
if(!currentPage.urlLocked && pageInfo.url != bugFixPageUrl){
currentPage.url = pageInfo.url;
}
**.**plete = true;
break;
case 3://title
currentPage.title = pageInfo.title;
break;
case 4://url changed, finalize url
currentPage.url = pageInfo.url;
currentPage.urlLocked = true;
break;
}
if(!currentPage.url){//*FIXME: 有url再决定
return;
}
if(currentPage.url){
if(currentPage.urlLocked ||**.**plete){
$(".progressbar").animate({"width":"100%"},700,function(){$(".progressbar").hide();});
if(currentPage.url == searchHome){
$("#action").hide();
}else{
$(".save").text('编辑').css({"opacity":1}).show();
}
}
}
}
function onEdit(){
//empty
}
function onBack(){
api.historyBack({
framename: getFrameName()
}, function(ret, err) {
alert("back with:" + JSON.stringify(ret));
if(ret.status) {
// Empty
}else {
api.closeWin();
}
});
}
function getFrameName(){
return api.winName + "_frame";
}
|
|