2014-09-18 106 views
0

我有一個固定寬度(1040px)的頁面。由於各種原因,我需要將變焦鎖定在iPad上,以縱向和橫向模式顯示頁面的全部寬度。如何在兩個方向鎖定iPad上的全屏頁寬?

我有一個事件處理程序觸發orientationchange包括以下代碼:

if (isLandscape) { 
    viewportMeta.content = 'width=1024,initial-scale=1.0,minimum-scale=1.0, maximum-scale=1.0'; 
    console.log('--> landscape'); 
} 
else { 
    viewportMeta.content = 'width=768,initial-scale=0.75,minimum-scale=0.75, maximum-scale=0.75'; 
    console.log('--> portrait'); 
} 
console.log('viewportMeta.content:'); 
console.log(viewportMeta.content); 

此代碼工作正常的初始頁面渲染,即使我重新調整了頁面渲染過程中的設備,但如果我重新調整頁面渲染後的設備失敗:橫向頁面縮放爲0.75,縱向頁面縮放爲1.0。

我閱讀this old page(如何適用?)那

不幸的是,當設備從縱向旋轉爲橫向模式的錯誤,或者更可能是錯功能,在移動Safari食堂這件事。初始縮放僅在整頁加載時纔有效。

我需要做些什麼才能使移動Safari尊重旋轉的新縮放?我是否必須以某種方式強制重新渲染?

回答

0

事實證明,我的問題的解決方案比我預期的要簡單得多,我甚至不需要JavaScript。 (現有的代碼,我的工作提出了我的預期。)

我只需要設置寬度和iPad自動進行縮放的護理:

<meta id="viewport" name="viewport" content="width=1040,user-scalable=no"> 

獎金:我想這與Android和它不起作用。在這種情況下,需要在JavaScript中設置比例。

+0

嘗試此操作並在Android上檢查 sbjumani 2014-12-02 07:35:44