2012-05-10 2 views
4

에 대한 크기를 조정하거나 위해서 orientationchange 이벤트 이후 올바른 창 너비를 가져옵니다 나는 크기 조정 및 위해서 orientationchange 이벤트에 기능을 결합. 이 함수에서는 windowwith를 읽으려고합니다. 아이폰은 항상 정확한 크기를 제공하지만 Android 디바이스 (2.2, 2.3 및 4.0)는 실제로 windowssize를 변경하기 전에 이벤트를 트리거하는 것으로 보입니다. 그래서 나는 항상 최신 윈도우즈가 아닌 최신 윈도우즈를 얻는다. 거기에 올바른 Windowsize를 얻을 수있는 몇 가지 방법 (시간 제한없이) 있나요?안드로이드

I 시도 다음과 같은 속성/기능 : $ (창) .innerWidth (참) $ (창)

없음() screen.width $ (창) (참) .width .outerWidth 그들은 올바른 너비를 제공하고 있습니다.

제안 사항?

+0

, 내가가 500ms의 타임 아웃을하는 것보다 다른 솔루션을 볼 수 없습니다 ... –

답변

3

다행히 window.orientation 이미 때 onorientationchange 이벤트가 발생 업데이트됩니다.

switch(window.orientation) { 
    case 90: 
    case -90: // portrait; 
     h = Math.max(window.innerWidth, window.innerHeight); 
     w = Math.min(window.innerWidth, window.innerHeight); 
     break; 
    default: // landscape 
     h = Math.min(window.innerWidth, window.innerHeight); 
     w = Math.max(window.innerWidth, window.innerHeight); 
     break; 
} 

적합하지 않습니다,하지만 작동 : 그래서 해결 방법으로 그 켭니다. 지금까지