我让返回上个页面,页面是独立的html页面,我添加下面的代码,没有反映,求解答
<script type="text/javascript" src="../js/update.js"></script>
<script type="text/javascript" src="../js/common.js"></script>
<script type="text/javascript" charset="utf-8">
//取消浏览器的所有事件,使得active的样式在手机上正常生效
document.addEventListener('touchstart',function(){
return false;
},true);
// 禁止选择
document.oncontextmenu=function(){
return false;
};
// H5 plus事件处理
var at=100;// 默认动画时间
function plusReady(){
// 隐藏滚动条
plus.webview.currentWebview().setStyle({scrollIndicator:'none'});
// DOMContentLoaded事件处理
var _domReady=false;
document.addEventListener('DOMContentLoaded',function(){
_domReady=true;
compatibleAdjust();
},false);
// 兼容性样式调整
var _adjust=false;
function compatibleAdjust(){
if(_adjust||!window.plus||!_domReady){
return;
}
_adjust=true;
// iOS平台使用div的滚动条
if("iOS"==plus.os.name){
at=300;
document.getElementById('content').className='scontent';
}
// 预创建二级窗口
preateWebviews();
// 关闭启动界面
setTimeout(function(){
plus.navigator.closeSplashscreen();
},500);
}
// 处理点击事件
var _openw=null;
function clicked(id){
if(_openw){return;}
_openw=preate[id];
if(_openw){
if(_openw.showded){
_openw.show('auto',at);
}else{
_openw.show('slide-in-right',at);
_openw.showded=true;
}
_openw=null;
}else{
var wa=plus.nativeUI.showWaiting();
_openw=plus.webview.create(id,id,{scrollIndicator:'none',scalable:false},{preate:true});
preate[id]=_openw;
_openw.addEventListener('loaded',function(){//叶面加载完成后才显示
setTimeout(function(){//延后显示避免低端机上闪屏
wa.close();
_openw.show('slide-in-right',at);
_openw.showded=true;
_openw=null;
},500);
},false);
_openw.addEventListener('close',function(){//页面关闭后可再次打开
_openw=null;
preate[id]&&(preate[id]=null);//兼容窗口的关闭
},false);
}
}
// 预创建二级页面
var preate={};
function preateWebviews(){
preateWebivew('plus/webview.html');
var plist=document.getElementById('plist').children;
// 由于启动是预创建过多Webview窗口会消耗较长的时间,所以这里限制仅创建5个
for( var i=0;i<plist.length&&i<2;i++){
var id=plist[i].id;
id&&(id.length>0)&&preateWebivew(id);
}
}
function preateWebivew(id){
if(!preate[id]){
var w=plus.webview.create(id,id,{scrollIndicator:'none',scalable:false},{preate:true});
preate[id]=w;
w.addEventListener('close',function(){//页面关闭后可再次打开
_openw=null;
preate[id]&&(preate[id]=null);//兼容窗口的关闭
},false);
}
}
// 清除预创建页面(仅)
function preateClear(){
for(var p in preate){
var w=preate[p];
if(w&&w.showded&&!w.isVisible()){
w.close();
preate[p]=null;
}
}
}
// 监听“返回”按钮事件
function addEventTest() {
plus.key.addEventListener("backbutton",onback);
}
</script>
3 个回复
DCloud_heavensoft
这么copy代码,到处都是问题,你还是看干净的只处理按键监听的代码吧。
http://www.html5plus.org/#specification#/specification/Key.html
丹阳
这样添加的话会有问题,比如预定美食,你定挤进去的话他就会只在整两个页面之间来回跳转,而不会一直返回上一级页面
NewsNing - 天行键
单独作为一个js,引用即可