2015-05-11 34 views
1

我寫了這個代碼,並在瀏覽器Safari工作正常....
Internet Explorer它的寬度的情況下工作......
,但它不是唯一的,如果工作高度從頂端朝向下方調整...
我注意到窗口粘貼到任務欄時,這種方式調整大小(見附圖),這允許調整窗口的極限...
任何修復此??
幫助將不勝感激......
限制將Internet Explorer設置調整到一個特定的限制

var MinimumWindowHeight = 600; 
    var MinimumWindowWidth = 1024; 
    var resizeTimeout; 


    $(window).resize(function() { 

    clearInterval(resizeTimeout); 
     resizeTimeout = setTimeout(function() { 
      try { 
       if ($(window).height() < MinimumWindowHeight || $(window).width() < MinimumWindowWidth) 
        window.resizeTo(MinimumWindowWidth, MinimumWindowHeight + 168); 
      } catch (e) { } 
     }, 50); 
    }); 
+1

請問您有關於您遇到的問題的更多描述嗎? – abarisone

+0

我注意到你應該分開寬度和高度......因爲如果有人調整到「599x2048」,你會強制窗口變爲「600x1024」,而不是「600x2048」(因爲2048不是太小!)。所以做2連續的'if',其中第二個'if'考慮到第一次潛在的調整大小... – Random

+0

@abarisone有這個問題的截圖..因爲我沒有10聲望,所以我不能張貼... ...請看看這張圖片[截圖](http://postimg.org/image/9axuvv3yz/)... – devgal

回答

1

嘗試這種分離的高度和寬度屬性:

clearInterval(resizeTimeout); 
     resizeTimeout = setTimeout(function() { 
      try { 
       if ($(window).height() < MinimumWindowHeight) { 
        window.resizeTo($(window).width(), MinimumWindowHeight + 168); 
       } 
       if ($(window).width() < MinimumWindowWidth) { 
        window.resizeTo(MinimumWindowWidth, $(window).height()); 
       } 
      } catch (e) { } 
     }, 50); 
    }); 



編輯1:
要記錄實際發生的事情:

clearInterval(resizeTimeout); 
     resizeTimeout = setTimeout(function() { 
      try { 
       if ($(window).height() < MinimumWindowHeight) { 
        console.log("last height: " + $(window).height()); 
        console.log("new height: " + MinimumWindowHeight + "+ 168"); 
        window.resizeTo($(window).width(), MinimumWindowHeight + 168); 
       } 
       if ($(window).width() < MinimumWindowWidth) { 
        console.log("last width: " + $(window).width()); 
        console.log("new width: " + MinimumWindowWidth); 
        window.resizeTo(MinimumWindowWidth, $(window).height()); 
       } 
      } catch (e) { 
        console.log("an error occured !"); 
      } 
     }, 50); 
    }); 



EDIT 2 :
我看到有關任務欄問題的帖子:https://stackoverflow.com/a/60209/4786273
看起來你不能,你必須在調整大小之前移動窗口以避免這種情況......你可以計算位置而不是(0,0)位置。
爲此,您可以閱讀https://stackoverflow.com/a/3437825/4786273screen.height - (MinimumWindowHeight + 168)以獲取窗口的頂部位置。

+0

它不工作...做同樣的事情...請在我以前的評論中看到我的問題的屏幕截圖 – devgal

+0

我真的不明白你的截圖...什麼是紅色框?調整大小後,大小(由您的代碼調整大小)? – Random

+0

紅色框顯示..如果窗口從上到下調整大小...窗口的底部粘貼到任務欄......粘貼顯示在紅色框中......並且這允許降低窗口的高度.....如果我正在做反之亦然,正在降低從底部到上部的高度我的代碼工作..並且窗口被調整大小給定的值..... – devgal