mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 29.03.2024 11:46 Benutzername: Passwort: Auto-Login

Thema: JS "Image Cross Fader" in PHP vom 19.03.2010


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> JS "Image Cross Fader" in PHP
Autor Nachricht
niggo
Threadersteller

Dabei seit: 08.10.2005
Ort: Stadt die es nicht gibt
Alter: -
Geschlecht: Männlich
Verfasst Fr 19.03.2010 23:58
Titel

JS "Image Cross Fader" in PHP

Antworten mit Zitat Zum Seitenanfang

moin!!

werde mich wohl die tage noch häufiger mal melden... *zwinker*

jetzt möchte ich gerne den Image Cross Fader Redux in eine php-seite einbauen. leider kommt da mist bei raus. wird wohl ein problem bei der übergabe von werten sein...

was muss denn geändert werden, dass das läuft? habe leider keinerlei ahnung von javascript...
Code:
window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);

var d=document, imgs = new Array(), zInterval = null, current=0, pause=false;

function so_init() {
   if(!d.getElementById || !d.createElement)return;

   // DON'T FORGET TO GRAB THIS FILE AND PLACE IT ON YOUR SERVER IN THE SAME DIRECTORY AS THE JAVASCRIPT!
   // http://slayeroffice.com/code/imageCrossFade/xfade2.css
   css = d.createElement("link");
   css.setAttribute("href","xfade2.css");
   css.setAttribute("rel","stylesheet");
   css.setAttribute("type","text/css");
   d.getElementsByTagName("head")[0].appendChild(css);

   imgs = d.getElementById("imageContainer").getElementsByTagName("img");
   for(i=1;i<imgs.length;i++) imgs[i].xOpacity = 0;
   imgs[0].style.display = "block";
   imgs[0].xOpacity = .99;
   
   setTimeout(so_xfade,1000);
}

function so_xfade() {
   cOpacity = imgs[current].xOpacity;
   nIndex = imgs[current+1]?current+1:0;

   nOpacity = imgs[nIndex].xOpacity;
   
   cOpacity-=.05;
   nOpacity+=.05;
   
   imgs[nIndex].style.display = "block";
   imgs[current].xOpacity = cOpacity;
   imgs[nIndex].xOpacity = nOpacity;
   
   setOpacity(imgs[current]);
   setOpacity(imgs[nIndex]);
   
   if(cOpacity<=0) {
      imgs[current].style.display = "none";
      current = nIndex;
      setTimeout(so_xfade,1000);
   } else {
      setTimeout(so_xfade,50);
   }
   
   function setOpacity(obj) {
      if(obj.xOpacity>.99) {
         obj.xOpacity = .99;
         return;
      }
      obj.style.opacity = obj.xOpacity;
      obj.style.MozOpacity = obj.xOpacity;
      obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
   }
   
}


danke, n.
  View user's profile Private Nachricht senden
safer-print

Dabei seit: 11.03.2010
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 20.03.2010 11:27
Titel

Antworten mit Zitat Zum Seitenanfang

Du musst Javascript innerhalb der PHP-Codeblöcke als Ausgabe (echo) einsetzten:
Code:

<?php
echo '<script>[ bla bla ]</script>';
?>

sonst versucht der Interpreter es als PHP auszuführen, was, wie du gemerkt hast, nicht funktioniert.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Sa 20.03.2010 11:49
Titel

Antworten mit Zitat Zum Seitenanfang

Das ist doch Quatsch. Alles, was *nicht* in <?PHP-Blöcken eingeschlossen wird, wird auch nicht ausgeführt. Was du da machst, ist darüber hinaus unglaublich schlechter Coding-Style.

Zuletzt bearbeitet von bacon am Sa 20.03.2010 11:49, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
safer-print

Dabei seit: 11.03.2010
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 20.03.2010 11:55
Titel

Antworten mit Zitat Zum Seitenanfang

Das ist natürlich nicht Quatsch, sondern eine Möglichkeit. niggo hatte das Problem eines PHP-Fehlers und der lässt sich so umgehen. Natürlich hat er außerdem die Möglichkeit das Javascript außerhalb der Codeblöcke auszugeben. Aber bezüglich Programmierstils ist es Geschmackssache über die sich streiten lässt. Man kann das Javascript auch extern einbinden, was in dem Fall wohl die sauberste Lösung wäre.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst So 21.03.2010 09:46
Titel

Antworten mit Zitat Zum Seitenanfang

Das ist mitnichten eine Frage des Geschmacks, das ist einfach eine Frage der Wahl der richtigen Entwurfsmuster.

Was du betreibst, ist eine Mischung zwischen Anwendungslogik und Präsentation, daraus bedingt ein monolithischer Aufbau und damit schlichtweg schlechter Stil.

Das lässt sich nicht nur subjektiv einschätzen, sondern glasklar, objektiv und nach gängigen Kritierien bewerten. Und die Bewertung lautet zwangsläufig: Das ist Müll, was du da oben verzapft hast.
  View user's profile Private Nachricht senden
niggo
Threadersteller

Dabei seit: 08.10.2005
Ort: Stadt die es nicht gibt
Alter: -
Geschlecht: Männlich
Verfasst So 21.03.2010 13:27
Titel

Antworten mit Zitat Zum Seitenanfang

so kinners, genug gezofft... *zwinker*

mein problem hat sich auch schon in luft aufgelöst. nicht php war das problem, sondern ich hatte im css mist gebaut... * Ich geb auf... *

trotzdem danke!!
n.
  View user's profile Private Nachricht senden
 
Ähnliche Themen Suche kleine swf - Image Fader
Wo finde ich diesen Fader für Gallery, diesen Smooth-Fader u
Cross-Browser-Stuff: IE7
suche ein fall out Image Menu, mit 3 image ebenen
Cross Browser Test mit FWP screenshots
Gif Animation: Farb-Überblendung (Cross-Fade) - Software?
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Allgemeines - Nonprint


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.