问题描述
我正在为Firefox OS开发一个应用程序,该应用程序应始终以纵向视图工作,因此我通过使用锁定了方向
screen.mozLockOrientation("portrait");
效果很好
但是当我旋转设备(尽管方向始终是纵向)时,width和height属性不会保持不变。 我的应用程序中某些部分的宽度和高度由javascript根据屏幕的宽度和高度确定。 确定分区大小的功能在应用程序启动时运行,当我在启动过程中保持手机旋转(横向)时,高度用作宽度,反之亦然。 如何锁定屏幕的width和height属性以及方向锁定?
我是否需要编写一个函数,该函数应首先检查设备的方向,然后根据方向确定正确的宽度和高度? 还是有另一种方法来锁定宽度和高度属性,例如方向锁定?
我发现的唯一方法是如图所示的hack
var widthToUse,heightToUse;
if(screen.width < screen.height){
widthToUse=screen.width;
heightToUse=screen.height;
}
else{
widthToUse=screen.height;
heightToUse=screen.width;
}
但这只是一个hack。 没有任何现有的方法可以与方向锁定一起锁定width和height属性吗?
1楼
Santosh
0
2015-08-24 09:32:40
在manifest.webapp文件中使用"orientation": "portrait-primary"
,它将屏幕方向永久设为纵向。