我正在尝试使用 javascript 在网站上调整 iframe 的大小,以便 iframe 与里面的内容一样长。我的代码如下:
var iFrames = $('iframe');
function iResize() {
for (var i = 0, j = iFrames.length; i < j; i++) {
iFrames[i].style.height = iFrames[i].contentWindow.document.body.offsetHeight + 'px';
}
}
console.log( 'resize frame before' );
if ($.browser.safari || $.browser.opera) {
console.log( 'if' );
iFrames.load(function(){
setTimeout(iResize, 0);
});
for (var i = 0, j = iFrames.length; i < j; i++) {
var iSource = iFrames[i].src;
iFrames[i].src = '';
iFrames[i].src = iSource;
}
} else {
console.log( 'else' );
$( '.iframe' ).load(function() {
console.log( 'load' );
this.style.height = this.contentWindow.document.body.offsetHeight + 'px';
});
}
console.log( 'resize frame end' );
它不起作用,但是使用 console.log 唯一没有出现的日志是在“加载”函数内。
我正在调用页面底部的所有 javascript,我不确定这是否导致问题。
任何帮助将不胜感激。
编辑:源代码在https://github.com/xonorageous/projet-sas 网站可以在http://daniel-lucas.com/experiments-dir/projet-sas/查看