Zur Navigation

Fototicker [2]

11 lava

Meine Frames-Lösung gefällt mir für's erste, nachdem ich den Scroll-Balken mit scrolling=no unterdrückt habe.

Die Div-Lösung gefällt mir trotz besserer Positionierung noch nicht, weil dann bei jedem Neu-Load, um das Großbild zu öffnen, ja auch der Ticker wieder bei der Startposition anfängt und sich nicht behält, wo er gerade stand (da müßte ich dann wohl eine weitere PHP-Variable übergeben, und dann die Position ganz exakt ausrechnen, wohin er scrollen soll - aber GANZ exakt ginge das ja gar nicht, oder? jedenfalls nicht einfach mit Bildnummer * Bildhöhe, denn das Bild kann ja beim Anklick bereits höher oder weniger hoch gescrollt sein - kann ich mir also DIREKT DIE SCROLLPOSITION statt der Bildnummer speichern, gibt es dafür eine vorgefertigte Variable? Ich vermute aber mal, daß es wegen der Unterbrechung beim Neu-Load dann trotzdem nicht so schön aussieht wie mit Frames, da geht es fließend .... ist noch nicht auf den Server hochgeladen, sorry, bisher nur lokal)

Nächste Frage, bzw. alte Frage: Ich wollte ja den Abbruchwert ausrechnen, bis wohin insgesamt gescrollt werden soll, also sowas wie Bildanzahl * Bildhöhe. Wenn ich den Rand nach oben nicht exakt mittels CSS festlege, kann das auch nicht klappen, oder? Also, exakt müßte ich ja den Rand noch dazuzählen, und ggf. auch den Abstand zwischen den Tabellenzeilen (der ist ja wohl auch nicht ganz auf Null, denn meine Felder sind ja grau und haben -durchaus gewollt- schwarzen Abstand dazwischen.....den müßte ich also auch auf einen festen Wert setzen?) Geht es eleganter? Gibt es z.B. einen Befehl, daß er von selbst erkennt, ob ein Bild schon auf dem Screen erscheint oder noch nicht??? Aber wie auch immer, wenn ich weiß, wie ich das ausrechne, hab ich noch das Problem, daß ich die Bildanzahl als PHP-Variable in der Tickerdatei festgelegt habe und die startani-Funktion ja in der externen Javascript-Datei liegt. Diese Variable müßte ich dann also noch übergeben. Wie???

Und noch eine Sache mißfällt mir, weil sie mir doppelt gemoppelt vorkommt: Im Moment definiere ich mein Bilder-Array zweimal, einmal als PHP-Array $Fotofeld für den Aufbau der Tabelle in der Tickerdatei und einmal als Javascript-Array dia für die Auswahl des passenden Bildes Nr. i mittels window.document.images[0].src=dia[i]. Momentan hab ich da einfach zweimal dieselbe Auflistung ("Pics/blau.jpg"; "Pics/schwarz.jpg"; "Pics/grün.jpg") etc. drin, aber eigentlich wär das ja auch besser, wenn Änderung in EINEM Array automatisch das andere Array anpassen würde, also wenn ich nur einmal die Reihenfolge per Hand eingäbe und dann entweder das Javascript-Array sich aus dem PHP-Array aufbauen würde oder umgekehrt. Tips dazu?

Danke!

28.12.2006 00:26

12 Jörg Kruse

kann ich mir also DIREKT DIE SCROLLPOSITION statt der Bildnummer speichern, gibt es dafür eine vorgefertigte Variable?

Ja, mit pageYOffset - aber die kennt der IE 6 noch nicht. Auf quirksmode.org ist ein Script aufgeführt, dass die Scrolling-Position browserübergreifend ermittelt:

http://www.quirksmode.org/viewport/compatibility.html (unter "Scrolling offset")

wenn ich weiß, wie ich das ausrechne, hab ich noch das Problem, daß ich die Bildanzahl als PHP-Variable in der Tickerdatei festgelegt habe und die startani-Funktion ja in der externen Javascript-Datei liegt. Diese Variable müßte ich dann also noch übergeben. Wie???

Du bindest die DAtei in dem script Element ein, dort kannst du die Variable auch an die URL dranhängen

<script language="JavaScript" src="beides2.js?anzahl=<?php echo $anzahl ?>">

also wenn ich nur einmal die Reihenfolge per Hand eingäbe und dann entweder das Javascript-Array sich aus dem PHP-Array aufbauen würde oder umgekehrt. Tips dazu?

Du kannst die Werte in dem PHP-Array speichern und dann in einer Schleife das JavaScript-Array ausgeben lassen, z.B.:

echo 'var dia = new Array(';
foreach ($phpArray as $value) {
    echo '"', $value, '", ';
}
echo ')';

28.12.2006 01:33

14 lava

Bzgl. der foreach-Schleife bin ich etwas irritiert: Da müßte ich doch dann zusätzlich noch eine Übergabe des PHP-Arrays aus der drunter.php-Datei an die beides.js-Datei irgendwie bewerkstelligen, damit das gehen kann, oder? Denn momentan hab ich die beiden Arrays auch in verschiedenen Dateien..... Oder sind PHP-Variablen automatisch dateiübergreifend global???

29.12.2006 23:41

15 Jörg Kruse

Ich denke, das beste wäre es, das PHP-Array in einer gemeinsamen Konfigurations-Datei zu speichern, z.B. mit demn Namen config.php. Diese wird dann in die beiden anderen Dateien gleichermaßen includet. Für den Include und damit das PHP-Array als JavaScript-Array ausgegeben werden kann, muss die Datei beides.js zuvor nur noch umbenannt werden in beides.php und dann natürlich auch unter diesem Namen eingebunden werden

<script language="JavaScript" src="beides2.php?anzahl=<?php echo $anzahl ?>">

29.12.2006 23:53

16 lava

Hm, du hattest schonmal gesagt, daß man js-Dateien einfach in php umbenennen könnte, aber als ich das neulich probiert hatte, ging es dann nicht mehr. Ich kuck morgen nochmal danach, für heute hab ich erstmal genug.... Klingt sonst eigentlich logisch, falls es so geht.

Ich werde jetzt mal anfangen, mir ein kleines Manual mit allem zu schreiben, was ich hier so Nützliches lerne :)
Ich bin dir echt total dankbar, daß du immer so rasch antwortest. Oft mit Befehlen, die ich einfach nicht kannte, manchmal auch mit Sachen, für die ich eigentlich schon das Wissen hätte, aber wo ich vermutlich mangels Routine im Umgang mit den ganzen Sprachen noch nicht selbst drauf komme. Aber ich lerne dazu und ich schreib mir das demnächst auch alles mal zusammen, damit es mir dann nicht wieder verloren geht. Nochmal lieben Dank!

30.12.2006 00:45

17 lava

Hallo, hab gestern fast die Nerven verloren, weil auf dem Server nicht lief, was lokal funktionierte. Komisch: kann es sein, daß ich auf meinem lokalen Server (XAMPP unter Linux) die Endung .js benötige (.php stattdessen geht nicht) und auf dem Host-Server die Endung .php benötige (.js stattdessen geht nicht). Kam heute früh auf die Idee, das mal zu probieren - und siehe da, so klappt es! Echt strange....woran liegt das???

Jetzt hab ich leider damit schrecklich viel Zeit verplempert und bin noch gar nicht zu den neuen Änderungen oder zum Upload-Script gekommen :(
Gleich krieg ich Sylvesterbesuch, also wird das wohl dieses Jahr nix mehr.... Guten Rutsch!!!

31.12.2006 10:23 | geändert: 31.12.2006 11:11

18 Jörg Kruse

kann es sein, daß ich auf meinem lokalen Server die Endung .js benötige (.php stattdessen geht nicht)

Wenn PHP ausgeführt werden soll, muss dies dem Server eigentlich durch eine entsprechende Endung (.php) oder durch eine entsprechende Direktive in der .htaccess oder httpd.conf mitgeteilt werden. Wird das PHP in der .js Datei auf dem lokalen Server ausgeführt?

Und was funktioniert nicht, wenn die Endung .php ist?

DAs Verhalten des Windows (Apache?) Servers halte ich in diesem Fall für normal

31.12.2006 11:09 | geändert: 31.12.2006 11:11

19 lava

Hallo, jetzt möchte ich mehrere dieser Foto-Ticker anbieten: "Aktuelles Styling", "Frühere Stylings", "Räumlichkeiten".
Wenn man in der Navi-Leiste auf "Fotos" klickt, soll ein entsprechendes Drop-Down-Menü aufgehen. Wie ich das realisieren kann, weiß ich nicht (weder, wie ich ein einfaches grau hinterlegtes Drop-Down-Menü erstelle noch, wie ich es schöner layouten kann....)
Bin dankbar für Tips....

So langsam wird die Webseite dann endlich fertig. Denn die Texte stehen schon und wenn ich die Grafikseiten/Fotoseiten geschafft hab, sollte der Rest hoffentlich ein Kinderspiel sein. Aber in diese Fotosache will ich jetzt noch etwas Ehrgeiz stopfen...

Die Navi-Leiste wird ähnlich aussehen wie bisher in http://sm.ismine.de/ladylava (was aber noch eine Frames-Seite war, die neue HP soll dann mit CSS strukturiert werden) und da soll dann eben bei Fotos nichts in den Hauptrahmen geladen werden, sondern erst eine Auswahl noch über die Menü-Leiste angeboten werden..... Machbar?

21.01.2007 10:39

20 Jörg Kruse

Wie ich das realisieren kann, weiß ich nicht (weder, wie ich ein einfaches grau hinterlegtes Drop-Down-Menü erstelle noch, wie ich es schöner layouten kann....)

Formularelemente kannst du in begrenztem Umfang auch mit CSS formatieren, siehe z.B.:

http://de.selfhtml.org/html/formulare/formatieren.htm

da soll dann eben bei Fotos nichts in den Hauptrahmen geladen werden, sondern erst eine Auswahl noch über die Menü-Leiste angeboten werden..... Machbar?

Du meinst ein Aufklapp-Menü, nehme ich an? Das ist machbar, siehe z.B. diese Anleitung auf SELFHTML, eine weitergehende Behandlung dieser Frage sollte aber besser in einem eigenen Thread behandelt werden :)

21.01.2007 12:23

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]