Hallo
Nochmal die Bildergallerie.
Ich glaube, ich habe das total falsch gebracht.
Ich kenne mich in Javascript NULL aus.
Bevor ich anfange zu lernen, brauche ich eine
kleine Einstiegshilfe.
Die Syntax in Javascript kenne ich natürlich noch nicht genau.
In einem Verzeichnis befinden sich z.B. 8 JPG-Dateien
Bildgrösse: 80x80
Namen der Dateien: 1001.jpg, 1002.jpg, 1003.jpg usw.
BILD = „100“;
DATEI = „.jpg“;
for i …
…src = BILD+i+DATEI
Ich hoffe, man kann erkennen, wie ich das meine.
Dann sollte evtl. noch eine kleine IF-Abfrage sein,
die die Schleife beendet, wenn kein Bild vorhanden ist.
Dieser kleine Einstieg wäre für mich eine grosse Hilfe.
Gruss
Klaus
Hallo
Nochmal die Bildergallerie.
Ich glaube, ich habe das total falsch gebracht.
Ich kenne mich in Javascript NULL aus.
Bevor ich anfange zu lernen, brauche ich eine
kleine Einstiegshilfe.
Die Syntax in Javascript kenne ich natürlich noch nicht genau.
In einem Verzeichnis befinden sich z.B. 8 JPG-Dateien
Bildgrösse: 80x80
Namen der Dateien: 1001.jpg, 1002.jpg, 1003.jpg usw.
BILD = „100“;
DATEI = „.jpg“;
for i …
…src = BILD+i+DATEI
Ich hoffe, man kann erkennen, wie ich das meine.
Dann sollte evtl. noch eine kleine IF-Abfrage sein,
die die Schleife beendet, wenn kein Bild vorhanden ist.
Da hast Du ein kleines Problem mit Javascript, weil es keine serverseitige Programmiersprache ist. Es gib keine Funktion ‚file_exists‘ in Javascript. html hat ein Ereignis auf dem img-Tag, welches beispielsweise eine Javascript Funktion aufrufen könnte (im Beispiel ‚imgNotFound()‘), wenn ein Bild angezeigt wollen werden würde, welches nicht vorhanden ist.
Ein Beispiel für eine Javascript-Gallerie habe ich hier bereits mal reingestellt:
http://www.wer-weiss-was.de/cgi-bin/forum/showarticl… Du hast nun mehrere Möglichkeiten: Du schreibst eine Fehlerfunktion, welche auf das letzte funktionierende Bild zurückspringt, wenn das nächste nicht gefunden wird - das ist aber IMHO keine saubere Lösung, da der Ladeprozess auch eine Zeit in Anspruch nimmt und deshalb das Ereignis ungewollt ausgelöst werden kann - oder Du verwendest eine serverseitige Programmiersprache wie PHP, welche gleich beim Aufruf der Gallerie die
Anzahl der Dateien in einem bestimmten Bilderverzeichnis zählt bzw. aus einer MySQL-DB abruft, um Dir dann gleich den richtigen Javascript-Code zu schreiben. Das ist sicher die beste Lösung. PHP kann Dir auch alle Dateien eines Verzeichnisses auflisten und beispielsweise einen Javascript-Array aufsetzen, unabhängig, ob die Bilder nun fortlaufende Dateinamen haben.
Gruß,
Rudy
Anzahl der Dateien in einem bestimmten Bilderverzeichnis zählt
bzw. aus einer MySQL-DB abruft, um Dir dann gleich den
richtigen Javascript-Code zu schreiben. Das ist sicher die
beste Lösung. PHP kann Dir auch alle Dateien eines
Verzeichnisses auflisten und beispielsweise einen
Javascript-Array aufsetzen, unabhängig, ob die Bilder nun
fortlaufende Dateinamen haben.
Gruß,
Rudy
Ja sicher, mit PHP wäre das auch kein Problem.
Die Bildergallerie brauche ich aber auch intern.
D.h., PHP würde am PC nichts bringen. Es sei denn ich installiere
PHP (was auf meinem 2. PC auch ist).
Also die Gallerie brauche ich intern und auch evtl. für die Homepage.
Da ich aber ein fauler Mensch bin, sollten diese Dateien gleich sein.
Die sollten intern am Computer zu starten sein, wie auch im Internet.
Leider habe ich am Anfang die JPG´s anders gehandhabt.
Mit 1a01.jpg, 1b01.jpg´usw.
Heute sind die nur noch nummeriert. 1001.jpg, 1002.jpg.
Da ich von Javascript keine einzige Syntax kannte, war ich am
verzweifeln.
BILD = „1001.jpg“
document.write("")
Bis ich den Fehler da entdeckt habe.
Vor width muss ein Leerzeichen.
Da fiel bei mir der „Euro“, äh Cent, nein Groschen.
Das wird ja interpretiert als HTML.
In PHP ist das ja ähnlich (ich Hornochse).
Schon habe ich meine 1. Gallerie laufen.
Nicht nur das. Die kleinen, angezeigten Bilder haben zusätzlich
eine Verweisfunktion (zum anklicken).
Nur Zahlen für Dateienamen wären besser.
Ich habe mir zur Übung aber die mit Buchstaben genommen.
var x = new Array(„a“,„b“,„c“,„d“,„e“,„f“,„g“,„h“,„i“,„j“,„k“);
ZA = „0“;
for i…
document.write("