存在severalanswers動態調整大小的問題,該iframe一旦加載就不會自動更改大小。不過,我有一個iframe加載一個表單,它根據用戶輸入(即jQuery驗證,PHP驗證,基於輸入打開的div等)向頁面添加高度來更改大小(特別是其高度)。動態調整動態iframe的大小
有沒有辦法改變iframe的大小,即使在加載之後,根據其大小的變化?將滾動添加到iframe看起來很混亂。
存在severalanswers動態調整大小的問題,該iframe一旦加載就不會自動更改大小。不過,我有一個iframe加載一個表單,它根據用戶輸入(即jQuery驗證,PHP驗證,基於輸入打開的div等)向頁面添加高度來更改大小(特別是其高度)。動態調整動態iframe的大小
有沒有辦法改變iframe的大小,即使在加載之後,根據其大小的變化?將滾動添加到iframe看起來很混亂。
如果在用戶輸入值後刷新頁面,該怎麼辦?
您可以設置一個時間間隔,每隔200毫秒檢查幀的內部大小是否在幀的'.contentDocument'屬性中。 d調整幀的大小。
這將是這個樣子:
var targetFrame = document.getElementById("InnerFrame");
var targetDocument = (targetFrame.contentWindow.document || targetFrame.contentDocument);
window.frameInterval = window.setInterval(function(){
targetFrame.height = targetDocument.body.height;
},200);
我沒有測試過這一點,因爲的jsfiddle不允許有URL的I幀。 但它可以讓你開始。
你有沒有嘗試'min-height'屬性在CSS? – KarelG
是的,這可能是一個選項。問題是高度可能因不同的瀏覽器和分辨率而不同,所以我更喜歡動態設置的東西。 – Josh
如果存在對此問題的非JS解決方案,它也將是'很好'(但也許不現實)。 – Josh