2011-08-08 107 views
5

我有一個簡單的彈出窗口,顯示300x300px圖片,我將窗口的大小設置爲350x350px,但取決於瀏覽器,我要麼獲取滾動條或額外的空白區域。是否有一些jQuery函數會調整瀏覽器窗口大小,以適應沒有任何滾動條或空白區域的內容,無論瀏覽器是什麼?jquery調整窗口大小以適應內容

幫幫我!

回答

0

它可能會影響文檔的CSS margin/padding。

做:

* { 
    padding: 0; 
    margin: 0; 
    border: 0; 
    outline: 0; 
} 

這是一個非常骯髒的CSS復位有關於CSS重置在網絡上萬噸,如果你想:-)

一個更優雅的解決辦法,而這將有望給您見識到了問題..

+0

這不是CSS相關的,我需要一個函數來調整瀏覽器窗口的大小以適應內容。 – Caballero

+0

您可能會發現,有時在不同瀏覽器中有滾動條或空白空間的原因是由於css和quirk模式。 – Fasani

+0

主要原因是不同的瀏覽器邊框尺寸。例如,Firefox有一個胖窗口擋板,因爲Opera實際上沒有擋板。如果圖像的大小是300x300,window.resizeTo(args)將使整個窗口爲300x300,包括擋板,按鈕和全部。 – Caballero

6

你可以做這樣的事情..

function windowResize() { 
    var contentWidth = document.getElementById("YourImageOrContent").offsetWidth; 
    var contentHeight = document.getElementById("YourImageOrContent").offsetHeight; 
    window.resizeTo(contentWidth,contentHeight); 
} 

你可能需要添加20個像素左右的值...但我仍然保持我原來的答案:-D

+0

我嘗試過這樣的操作,但由於某些原因,它仍然以不同的方式調整每個瀏覽器上的彈出窗口 – Caballero

+0

可能是因爲CSS,這是我最初的回覆,試着做上面的* {},這樣你應該在所有元素上填充0,邊距,邊框和大綱,這樣可以讓你在所有瀏覽器上都有相似的大小窗口。 ) – Fasani

+0

document.getElementById(「#YourImageOrContent」)不正確。刪除標籤 –

0

如果你彈出一個瀏覽器窗口(這是我的理解),然後在你的開放功能,你應該做這樣的事情:

<SCRIPT LANGUAGE="javascript"> 
<!-- 
window.open ('image.jpg', 'newwindow', 'height=350,width=350, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, directories=no, status=no'); 
--> 
</SCRIPT> 

通知​​

0

我面臨着同樣的問題的部分問題是,「resizeTo」調整大小根據窗口的界限。這在處理不同的瀏覽器時確實沒有幫助,因爲地址欄大小在瀏覽器之間會有所不同,有些瀏覽器會遵守「location = no」指令,有些則不會。

爲我工作(其中確實包括一些jQuery的,很抱歉,但你很可能逆轉了,但是你想實現它)的解決方案是這樣的:

window.resizeTo(422, $('#my-id').height() + (window.outerHeight - window.innerHeight)); 

我在Safari上測試了這個,Firefox和Chrome,它似乎適用於所有這些(沒有Windows安裝,所以不能評論IE)。

相關問題