2013-07-25 195 views
0

我的頁面被加載到iframe中,我需要使用javascript來調整iframe的大小。我嘗試以下操作:IE9忽略滾動和溢出屬性

iframe.style.overflow = 'hidden' 
iframe.scrolling = 'no' 
var content = iframe.contentWindow.document.getElementById('content') 
var height = content.offsetHeight + 10 
iframe.style.height = height + 'px' 
console.log(content.offsetWidth) 
var width = content.offsetWidth + 10 
iframe.style.width = width + 'px' 

在FireFox上,它的工作原理與此相似,但IE9忽略了滾動和溢出屬性。瀏覽器模式設置爲IE9標準。

如何擺脫IE9下的iframe滾動?

+0

我無法在IE10上使用此jsfiddle在IE10上進行復制(與通過開發工具激活的IE9的兼容模式):http://jsfiddle.net/lechlukasz/dGEx9/3/ –

回答

1

看起來像iframe已加載,當你這樣做。您可以設置:

iframe.contentWindow.document.body.style.overflow = 'hidden'; 

如果有頁面上的文字iframe標籤,你可以設置scrolling屬性"no",但經過iframe元素已創建的頁面設置與JS這個屬性值時,不工作。如果您要動態創建iframe,則可以在將其追加到文檔之前設置setAttribute('scrolling', 'no')

+0

這正是我正在做的。問題是,IE9忽略了這一點。與我在Dev Tools中設置的一樣。 –

+0

不,它不會,這會設置'iframe'中的樣式,您試圖操作'iframe'元素本身。 – Teemu

+0

工程很好,只要我可以操縱iframe的內容,在我的情況下我可以,但在一般情況下http://stackoverflow.com/questions/4724904/how-to-change-style-of-iframe-content -cross-domain –