我试图在用户旋转屏幕时更改网页中元素的大小(特别是对于iPad,但也适用于所有移动设备)。新尺寸将根据新的屏幕尺寸计算。
我尝试过使用window.onresize = myFcn;
,但调整大小的事件并没有在我的iPad上正确启动。
我已尝试使用window.onorientationchange = myFcn;
,但事件在屏幕的实际尺寸发生变化之前被触发,因此我无法使用它们来确定表格的正确新尺寸。
我已尝试使用setTimeout(myFcn, 50)
,如我在读到的SO答案中所建议的那样,但这只会创建一个无限循环,因为尺寸在循环运行时不会发生变化。
如何在方向更改后获得新的屏幕尺寸?
答案 0 :(得分:1)
如果你将2和3组合在一起,那么设备可以在50ms内完成方向改变(如果它不够,你可以增加它)。
window.onorientationchange = function () {
setTimeout(myFcn, 50);
};