Hintergrundfarbe IFrame
Thomas
- html
0 David Tibbe0 wahsaga
Hallo,
ich möchte in einem IFrame eine Hintergrundfarbe per Javascript oder wenn das nicht geht direkt setzen. Leider klappt das nicht so wie ich will :-( Wenn ich für den IFrame src="name.html" benutze, kann ich durch setzen von bgcolor="..." in name.html zu einer Hintergrundfarbe kommen. Jedoch möchte ich das im IFrame direkt per JavaScript bei der Einstellung src="" erreichen. Anbei das html-File. Vielleicht kann mir jemand weiterhelfen.
<HTML>
<HEAD>
<TITLE>IFrame Testseite</TITLE>
</HEAD>
<BODY>
<script type="text/javascript">
function ChangeSettings()
{
// Statuszeile ändern
var txt="Letzte Aktualisierung: ";
window.status=txt+document.lastModified;
// Hintergrundfarbe IFrame ändern
document.all.MyFrame1.backgroundColor="#336699";
}
</script>
<frameset cols="25%,75%">
<iframe src="MyFrame1.html"
name="MyFrame1"
onload="ChangeSettings();"
style="backgroundColor:'#336699'; bgcolor:'336699'"
bgcolor="#336699"
backgroundcolor="#336699"
width="25%"
height="100"
align="left"
scrolling="auto"
frameborder="1">
<iframe src="MyFrame2.html"
name="MyFrame2"
onload="ChangeSettings();"
style="backgroundColor:#336699"
width="75%"
height="100"
align="right"
scrolling="no"
frameborder="1">
</frameset>
</BODY>
</HTML>
Hallo Thomas,
// Statuszeile ändern
Warum willst du deine Besucher ärgern?
document.all.MyFrame1.backgroundColor="#336699";
document.all solltest du nicht verwenden, lieber getElementById() o.Ä.
<frameset cols="25%,75%">
<iframe [...]
Für IFrames benötigst du kein Frameset. Lies noch einmal http://de.selfhtml.org/html/frames/index.htm ff.
style="backgroundColor:'#336699'; bgcolor:'336699'"
Es gibt kein backgroundColor oder bgcolor in CSS, wohl aber background-color. Lasse die ganze Seite sowieso einmal durch einen Validator laufen, es sind noch mehr falsche Attribute vorhanden.
Du kannst die "Hintergrundfarbe eines Frames" nicht mit CSS ändern. IdR ist es die Fensterfarbe deines Betriebssystems (meistens also weiß) oder browserspezifisch, in der der Frame normal angezeigt wird. Was du aber wie gewohnt mit CSS bestimmen kannst ist die Hintergrudfarbe der Seite, die momentan im (I)Frame angezeigt wird.
Grüße
David
hi,
ich möchte in einem IFrame eine Hintergrundfarbe per Javascript oder wenn das nicht geht direkt setzen.
und warum per JS, und nicht "direkt"?
Leider klappt das nicht so wie ich will :-( Wenn ich für den IFrame src="name.html" benutze, kann ich durch setzen von bgcolor="..." in name.html zu einer Hintergrundfarbe kommen.
ist doch prima!
Jedoch möchte ich das im IFrame direkt per JavaScript bei der Einstellung src="" erreichen.
nochmals: warum?
Anbei das html-File.
auweia.
Vielleicht kann mir jemand weiterhelfen.
ja, aber du benötigst schon weit vor dem zeitpunkt hilfe, als zu dem, den du dir denkst.
// Statuszeile ändern
var txt="Letzte Aktualisierung: ";
window.status=txt+document.lastModified;
was soll denn der unfug?
bitte recherchiere doch mal hier im </archiv/> zum thema "statuszeile beschreiben".
// Hintergrundfarbe IFrame ändern
document.all.MyFrame1.backgroundColor="#336699";
document.all ist IE-only.
MyFrame1 ist dein iframe - die hintergrundfarbe gehört ab zum in diesem iframe geladenen dokument.
<frameset cols="25%,75%">
<iframe src="MyFrame1.html"
himmel, was soll denn <iframe> unterhalb von <frameset>?
da gehört <frame> oder ein weiteres <frameset> hin - aber ganz gewiss kein <iframe>.
http://de.selfhtml.org/html/referenz/elemente.htm#frameset
name="MyFrame1"
onload="ChangeSettings();"
onload hat hier auch wenig verloren - das würde wieder zu dem dokument _im_ iframe gehören.
style="backgroundColor:'#336699'; bgcolor:'336699'"
bgcolor="#336699"
backgroundcolor="#336699"
weitgehend zwecklos, weil ... s.o.
gruß,
wahsaga