Siechfred: Hintergrundbild ändern mittels Java Script

Beitrag lesen

Tag BessenG1.

aber jetzt hab ich das problem das das hintergrundbild mehrfach kommt

Das style-Objekt erlaubt dir den Zugriff auf alle CSS-Eigenschaften, die das referenzierte HTML-Objekt haben kann. Da du versuchst, den Hintergrund zu manipulieren, sind dies natürlich die CSS-Eigenschaften für Hintergründe. Ändere also nicht nur das Hintergrundbild, sondern passe auch die CSS-Eigenschaften dafür an (Position und Wiederholung). Dies entweder direkt als Klasse oder dynamisch mit Javascript. Beispiel:

CSS-Definition im Kopfbereich der Datei:

<style type="text/css">
<!--
  .bild {
    background-position:50% 50%;
    background-repeat:no-repeat;
  }
-->
</style>

HTML-Code im Bodybereich:

<div id="changeit" class="bild" />

ich will aber das der hintergrund nur einmal kommt und nicht wiederholt!
#hier mein code:
[...]
<div id="changeit" style="background-image:url(""); background-repeat:no-repeat;>

Dein style-Attribut ist hier zu Ende -------------^ (schließende Anführungszeichen),
der Rest wird ignoriert.

Zudem ist dein Javascript-Code ziemlich umständlich, das Ganze kannst du auf folgende paar Zeilen reduzieren:

<script language="Javascript" type="text/javascript">
<!--
 function bildwechsel() {
  var bilder = new Array("hlGras.gif","hlAsche.gif", .... )
  var now = new Date;
  var nr = parseInt(now.getMilliseconds()/100);
  document.getElementById("changeit").style.backgroundImage="url("+bilder[nr]+")";
 }
//-->
</script>

Das Array »bilder« musst du natürlich noch so erweitern, dass alle 10 Bilder darin enthalten sind. Wie du diese Funktion jetzt nach einer bestimmten Zeit erneut aufrufen kannst, darfst du dir durch Lesen der Referenz zu setInterval selber aneignen.

[dsf 3.6]
Siechfred

--
»Sie kochten heimlich mit Wasser und tranken öffentlich Wein.«