Hallo,
if (document.getElementById) {
var a = document.getElementById(iframename);
var b = a.document.getElementsByTagName('body')[0];
Im Firefox haben iframe-Elementknoten keine Eigenschaft »document«, siehe </archiv/2006/8/t134560/#m873073>.
Besser:
var body = iframe.contentDocument || iframe.document;
Und dann einfach .body anstatt dieser Wurschtelei. Das body-Element ist immer unter document.body verfügbar.
a.scrolling = 'no';
}
else if (document.all && !window.opera) {
Opera kann getElementById genauso lange wie document.all, also kann man das hier weglassen, weil er in den ersten Teil einsteigen wird.
var a = document.all[iframename];
var b = a.document.tags['body'][0];
document.body, siehe oben.
Andererseits kann man IE-4-Unterstützung auch einfach weglassen...
function pruefe() {
var iframename = 'detail';
if (!document.getElementById) return;
var iframe = document.getElementById(iframename);
var body = iframe.contentDocument || iframe.document;
iframe.scrolling = 'no';
iframe.style.height = (body.offsetHeight + 35) + 'px'; // vielleicht eher scrollHeight
body.scroll = 'no'; // ist auch unnötig, glaube ich, wenn man eh overflow:hidden setzt
body.style.overflow = 'hidden';
}
Mathias