hintergrund bild ändert sich nicht

donime

Grünschnabel
hallo
ich hab folgendes problem ich will je nach bildschirmauflösung ein anderes hintergrund bild anzeigen aber irgend wie klappt das nicht
Code:
<html>
<head>
<script language="JavaScript" type="text/javascript">
<!--
function change(){
if (screen.width==1280||screen.height==1024) 
 document.background="http://photos1.blogger.com/blogger/4897/1402/320/DSC00110.jpg";

}
...

}
//-->
</script>
</head>
<body background="javascript:change();">
blabla
</body>
</html>
{

über das ändern von hintergrund bildern hab ich schon viel gefunden aber irgendwie hat das alles nicht geklappt und nun bin ich ein wenig verzweifelt.
für hilfe bedanke ich mich schonmal im voraus
 
hmm damit komm ich auch nit weiter
irgendwie klappt das nur mit bildern nicht, wenn ich das ganze mit verschiedenen farben ausprobierne und dann statt "document.background ... " sondern "document.bgcolor ... " verwende funktionert es
 
Das hat den einfachen Grund, dass es keine Eigenschaft des document-Objekts gibt, die den namen "background" trägt. Versuchs mal mit:
Code:
document.getElementsByTagName('body')[0].style.background =
 'url(http://photos1.blogger.com/blogger/4897/1402/320/DSC00110.jpg)';
oder
Code:
document.body.background='http://photos1.blogger.com/blogger/4897/1402/320/DSC00110.jpg';

Für das nächste Mal könntest du dir vielleicht überlegen zuerst in die JS-Konsole deines Browsers zu schauen, da werden nämlich Fehlermeldungen angezeigt, man glaubt es kaum. Man hätte allerdings auch bei selfhtml schauen können, wenn man nicht sicher ist, ob es das wirklich gibt, was man verwendet...
 
Zuletzt bearbeitet:
ne klappt immer noch net und in der js-konsole wird kein fehler und keine warnung nagezeigt

naja egal trotzdem danke
 
donime hat gesagt.:
ne klappt immer noch net und in der js-konsole wird kein fehler und keine warnung nagezeigt

naja egal trotzdem danke
Dann hast du es falsch eingebaut, denn wie du -> hier <- sehen kannst funktioniert es (hab's zumindest im IE, Opera, und Firefox probiert).
 
lieber con-f-use, wie du im anhang sehen kannst, klappst doch nicht so recht, zumindest nicht bei mir

@donime <body background=... erwartet die angabe einer bilddatei, also versuche es doch besser aml mit <body onload=javascript:change() oder wie immer deine funktion heisst
dann müsste es auch klappen
 

Anhänge

  • funzt_non.jpg
    funzt_non.jpg
    23,1 KB · Aufrufe: 42
Du musst schon auch auf die Buttons klicken ;)
Wenn es bei dir nicht funktioniert hast du vielleicht JS ausgeschaltet. Du kannst mir ruhig glrauben, dass es geht.

Habe mein Beispiel jetzt noch um die von Sven vorgeschlagene Mthode mit dem setAttribute() erweitert. Auch diese Funktioniert sowohl im IE also auch in Geck-Browsern und Opera. Es muss an dir liegen. Allerdings jetzt mit einem Bild, das bei mir auf dem Server gespeicht ist.

Nebenbei:
"javascript:" hat in Events nichts zu suchen, denn onclick, onblur etc. enthalten schon per definitionem Javascript. Das "javascript:" führt in manchen Browsern zu Fehlern, wenn es in Events verwendet wird. Es ist ausschlißlich für Links konzipiert.
 

Anhänge

  • beweisfoto2.jpg
    beweisfoto2.jpg
    115,8 KB · Aufrufe: 44
Zuletzt bearbeitet:
@con-f-use: Eigentlich habe ich sowohl im IE als auch im Firefox Skripte aktiviert, aber ich glaube es dir auch so. Wer weiß woran es liegt?
Stimmt," javascript:" hat im Event-Handler nicht zu suchen, da ja per definitionem sowieso JavaScript. Aber wenn ich einen Eventhandler in eine php-echo-Anweisung packe, empfiehlt es sich, diese redundante Information explizit aufzuführen, in etwa so echo "<input ... onclick=javascript:..."; denn ich habe die Erfahrung gemacht, dass es ansonsten einfach nicht .
 

Neue Beiträge

Zurück