我使用此代碼自動調整我的iframe http://sonspring.com/journal/jquery-iframe-sizing的大小。工作得很好,但昨天當我使用搜索引擎作爲iframe時出現了一個問題,因爲結果需要0.5秒到1秒才能顯示,自動調整大小無法正確確定窗口的大小,所以我認爲我需要延遲0.5秒的腳本。我怎樣才能做到這一點 ?iframe延遲調整大小
這是iframe.js
$(document).ready(function()
{
// Set specific variable to represent all iframe tags.
var iFrames = document.getElementsByTagName('iframe');
// Resize heights.
function iResize()
{
// Iterate through all iframes in the page.
for (var i = 0, j = iFrames.length; i < j; i++)
{
// Set inline style to equal the body height of the iframed content.
iFrames[i].style.height = iFrames [i].contentWindow.document.body.offsetHeight + 'px';
}
}
// Check if browser is Safari or Opera.
if ($.browser.safari || $.browser.opera)
{
// Start timer when loaded.
$('iframe').load(function()
{
setTimeout(iResize, 0);
}
);
// Safari and Opera need a kick-start.
for (var i = 0, j = iFrames.length; i < j; i++)
{
var iSource = iFrames[i].src;
iFrames[i].src = '';
iFrames[i].src = iSource;
}
}
else
{
// For other good browsers.
$('iframe').load(function()
{
// Set inline style to equal the body height of the iframed content.
this.style.height = this.contentWindow.document.body.offsetHeight + 'px';
}
);
}
}
);
哪部分要延遲?你當前的'setTimeout'傳遞0作爲參數。不會傳遞大於500的數字嗎? – 2013-03-19 07:35:19
我需要延遲所有瀏覽器。我不知道你想要推遲「哪一部分」的意思。我需要延遲調整iframe的大小,因爲搜索結果較慢。我應該用500替換0這裏setTimeout(iResize,0); ? – Blazer 2013-03-19 07:40:02