我注释了window.addEventListener("orientationchange", function (){
if (window.orientation==90){
plus.navigator.setFullscreen(true);
}else{
plus.navigator.setFullscreen(false);
}
}); 这段代码
然后在切换全屏后增加plus.navigator.setFullscreen(true); 取消全屏后增加plus.navigator.setFullscreen(false);
也就是改成了$("#b1").on("tap",function(){
plus.screen.lockOrientation("landscape-primary");
plus.navigator.setFullscreen(true);
})
$("#b2").on("tap",function(){
plus.screen.lockOrientation("portrait-primary");
plus.navigator.setFullscreen(false);
})
之后,再取消全屏和全屏时也会出现异常,就是在没全屏或没取消全屏之前先执行了状态栏的改变。也导致了页面显示不全
最后 改成了
$("#b1").on("tap",function(){
plus.screen.lockOrientation("landscape-primary");
setTimeout(function(){plus.navigator.setFullscreen(true)},500);
})
$("#b2").on("tap",function(){
plus.screen.lockOrientation("portrait-primary");
setTimeout(function(){plus.navigator.setFullscreen(false)},500);
})
让状态栏的改变延迟500毫秒执行,目前暂时解决了这个问题。 希望可以得到修复,也许是我哪里写的不对,请大佬讲解,谢谢。
5 个回复
云端的风 (作者)
重新建了个项目 并没有发现这个问题,但是一旦加上这段代码
window.addEventListener("orientationchange", function (){
if (window.orientation==90){
plus.navigator.setFullscreen(true);
}else{
plus.navigator.setFullscreen(false);
}
});
就会出现我说的这个问题。
这段代码是想监听横屏和竖屏 如果横屏就把上方的状态栏给隐藏掉,竖屏就显示出来 加上这段代码就会出BUG
云端的风 (作者)
云端的风 (作者)
云端的风 (作者)
我注释了window.addEventListener("orientationchange", function (){
if (window.orientation==90){
plus.navigator.setFullscreen(true);
}else{
plus.navigator.setFullscreen(false);
}
}); 这段代码
然后在切换全屏后增加plus.navigator.setFullscreen(true); 取消全屏后增加plus.navigator.setFullscreen(false);
也就是改成了$("#b1").on("tap",function(){
plus.screen.lockOrientation("landscape-primary");
plus.navigator.setFullscreen(true);
})
$("#b2").on("tap",function(){
plus.screen.lockOrientation("portrait-primary");
plus.navigator.setFullscreen(false);
})
之后,再取消全屏和全屏时也会出现异常,就是在没全屏或没取消全屏之前先执行了状态栏的改变。也导致了页面显示不全
最后 改成了
$("#b1").on("tap",function(){
plus.screen.lockOrientation("landscape-primary");
setTimeout(function(){plus.navigator.setFullscreen(true)},500);
})
$("#b2").on("tap",function(){
plus.screen.lockOrientation("portrait-primary");
setTimeout(function(){plus.navigator.setFullscreen(false)},500);
})
让状态栏的改变延迟500毫秒执行,目前暂时解决了这个问题。 希望可以得到修复,也许是我哪里写的不对,请大佬讲解,谢谢。
云端的风 (作者)
这个问题确实只在openWindow时才会出现,如果是location.href直接跳转的话,不存在这个问题,监听修改状态栏也可以用