mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 29.03.2024 08:07 Benutzername: Passwort: Auto-Login

Thema: Javascript img src ändern funktioniert nicht vom 22.03.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Javascript img src ändern funktioniert nicht
Autor Nachricht
oli.s.
Threadersteller

Dabei seit: 08.01.2007
Ort: Lehre
Alter: 36
Geschlecht: Männlich
Verfasst Sa 22.03.2008 13:24
Titel

Javascript img src ändern funktioniert nicht

Antworten mit Zitat Zum Seitenanfang

Hi alle zusammen, sitze schon seit ein paar Stunden hier rum und versuche diese Funktion zum laufen zu bringen aber es passiert nichts.
Nachdem die Bilder der Seite durch diese Funktion vorgeladen wurden:
Code:
<script type="text/javascript" language="JavaScript">
                pic_vorladen = new Image();
                pic_vorladen.src = "<? echo $dir_thumb.$value; ?>";
              </script>

sollen dann die source der Bilder (anfangs ein Ladebalken) durch das eigentliche Bild ersetzt werden.
Hier die Funktion:
Code:
<script type="text/javascript" language="JavaScript">
              function onComplete(id, dir) {
              var end = document.images.length;
              alert(end);
           
              if(document.images[id].complete == true) {
                  document.getElementById[id].src = dir;
                                            }
                                          }
            </script>


Dir und Id werden übergeben...hab auch schon versucht die Variabeln zu ersetzen um es statisch zu versuchen aber geht auch nciht.

Wo liegt mein Fehelr?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
therapiekind

Dabei seit: 14.03.2006
Ort: In deinem Kopf
Alter: -
Geschlecht: -
Verfasst Di 25.03.2008 22:35
Titel

Antworten mit Zitat Zum Seitenanfang

getElementById(dieID)

Man beachte die runden Klammern. *Thumbs up!*
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Mi 26.03.2008 03:15
Titel

Antworten mit Zitat Zum Seitenanfang

therapiekind hat den Fehler erkannt.
getElementById() ist eine Methode des document-Objektes.
Und Funktionen/Methoden (wie auch in vielen anderen Sprachen) erwarten Klammern hinter dem Funktionsnamen Klammern, um ggf. Parameter zu übergeben.
Die eckigen Klammern werden in JavaScript für den Zugriff auf Elemente eines Arrays genutzt.


Code:
<script type="text/javascript" language="JavaScript">

Das language-Attribut ist deprecated. Du solltest es weglassen.
Dadurch packen die Uralt-Browser dein Script zwar nicht, aber die kennen auch kein document.getElementById oder Ähnliches.

Code:
pic_vorladen.src = "<? echo $dir_thumb.$value; ?>";

Auf die Kurzschreibweise würde ich möglichst verzichten, damit dein Script ggf. dann auch auf anders konfigurierten Servern läuft. Also so:
Code:
pic_vorladen.src = "<?php echo $dir_thumb.$value; ?>";

Wenn du's noch kürzer haben willst, wäre es auch folgendermaßen möglich:
Code:
pic_vorladen.src = "<?= $dir_thumb.$value ?>";

Aber wie gesagt: besser auf die Abkürzungen verzichten. Erhöht die Portabilität.
  View user's profile Private Nachricht senden
oli.s.
Threadersteller

Dabei seit: 08.01.2007
Ort: Lehre
Alter: 36
Geschlecht: Männlich
Verfasst So 30.03.2008 14:45
Titel

Antworten mit Zitat Zum Seitenanfang

Vielen Dank für eure Tipps, aber das funktioniert leider immer noch nicht.
Wenn ich die Länge von images auslesen lasse wird mir 0 angezeigt.

Deshalb wechselt er in der funktion onComplete wahrscheinlich auch nicht den Pfad der Bilddatei.

Was ist falsch bei pic_vorladen?

Gruß Olli
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Backware

Dabei seit: 09.12.2004
Ort: bei Köln
Alter: 38
Geschlecht: Männlich
Verfasst So 30.03.2008 19:39
Titel

Antworten mit Zitat Zum Seitenanfang

Code:

<script type="text/javascript">
   function changeImg ( obj, src )
   {
      loadImg = new Image ( );
      loadImg.src = src;
      
      obj.src = loadImg.src;
   }
</script>
<a href="javascript:changeImg(document.getElementById('datImg'), 'meinbild.jpg');">Ersetzen</a>
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst So 30.03.2008 23:43
Titel

Antworten mit Zitat Zum Seitenanfang

http://de.selfhtml.org/javascript/beispiele/buttons.htm
  View user's profile Private Nachricht senden
 
Ähnliche Themen <select>-Tag per Javascript funktioniert nur in FF
Javascript funktioniert nicht
Formularüberprüfung mit Javascript funktioniert nicht!
Javascript funktioniert nur in IE11 nicht ?
Wie funktioniert dieses JavaScript PopUp?
Firefox, Javascript: Fullscreen funktioniert nur per Button?
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.