iframe erhält automatisch die Onload-Höhe und -Breite
function AutoResize(iframe) { //firefox if(iframe.contentWindow) { iframe.height = iframe.contentWindow.document.documentElement.scrollHeight; iframe.width = iframe.contentWindow.document.documentElement.scrollWidth; } //IE else if(iframe.contentDocument) { iframe.height = iframe.contentDocument.width; iframe.width = iframe.contentDocument.height; } }
iframe wird automatisch geladen:
var tdObj = document.getElementById('ifrtd'); tdObj.innerHTML = ' QQ动态加载中 ... '; var iframe = document.createElement("iframe"); iframe.src = 'http://www.zbphp.com/'; if (iframe.attachEvent){ //iframe.attachEvent("onload",AutoResize.call(iframe)); #报错 iframe.attachEvent("onload", function(){ AutoResize(iframe); }); } else { //iframe.onload = AutoResize.call(iframe);#报错不支持 iframe.onload = function(){ AutoResize(iframe); }; } tdObj.innerHTML = ''; tdObj.appendChild(iframe);
Tatsächlich möchte iframe.onload hier als iframe.onload = AutoResize geschrieben werden .call(iframe); Entschuldigung, Fehlermeldung, nicht unterstützt.
Ich wusste nie, wie man Funktionsaufrufe in Javascript durchführt. Wenn beispielsweise iframe.onload = function(){} eine Funktion aufruft und über Parameter verfügt, können Sie diese nur so schreiben, anstatt wie bei anderen Programmen Parameter direkt zu übergeben.
Ich habe apply() call() schon einmal gesehen, aber es wird nicht unterstützt, selbst wenn ich es versuche. Warum?
Weitere Artikel zu Javascript Firefox zum automatischen Laden von Iframe mit Beispielen für automatische Höhe und Breite finden Sie auf der chinesischen PHP-Website!