?-¿ blog schokolade ¿-? |
Online for 7741 days
Last update: 2004.02.11, 21:26 You're not logged in ... login
JavaScript-Ticker Version 1.0
[HopMacro error in ticker: ReferenceError: "softwrap" is not defined. (Global/tickerFunctions.js; line 132)]
Safari unter Mac OSX
ist leider inkompatibel. H. Mittendorfer by Hans.Mittendorfer.Uni-Linz (2004.02.11, 21:26) Was wollen sie wirklich?
Wenn sie es "einfach" wollen, indem sie das Aussehen... by johannes.wegner_berlin (2004.01.27, 16:10) Ihr Vorschag für...
.. Posting ist willkommen. Besser wäre jedoch... by Hans.Mittendorfer.Uni-Linz (2004.01.27, 12:05) JavaScript: Back To The...
Hauptthematik meiner Semesterbeiträge für... by johannes.wegner_berlin (2004.01.26, 01:27) Praktische Realisierung...
Prinzipiell unterteilt sich der JavaScript-Ticker in... by johannes.wegner_berlin (2004.01.26, 01:12) |
johannes.wegner_berlin,
Mittwoch, 21. Januar 2004, 18:41
Topic: JavaScript-Ticker Implementation des JavaScript-Tickers als Macro
Hier erfahren Sie alles Wissenswerte über die Entwicklung des JavaScript-Tickers.
Wenn Sie allgemeine Fragen dazu haben, stellen Sie diese bitte unter: Allgemeine Fragen Haben Sie den Ticker selbst getestet und Sie wollen Ihre Meinung loswerden, dann fomulieren Sie dies bitte unter: Ticker-Feedback ... comment
johannes.wegner_berlin,
Sonntag, 25. Januar 2004, 22:30
Praktische Realisierung des JavaScript-Tickers
Prinzipiell unterteilt sich der JavaScript-Ticker in die folgenden drei Bereiche:
1) Definition der Macros Um den Ticker über ein Macro (<% ticker param1="..." %>) aufrufen zu können, musste ich im "../global"-Ordner eine JavaScript-Datei (*.js) erzeugen die eine Funktion mit dem Namen ticker_macro() enthält. In ihr werden die Parameter, die mit dem Ticker-Macro übergeben wurden, ausgelesen und wenn nötig, durch Standardwerte ergänzt. Dann werden alle nötigen Funktionen aufgerufen, um den Ticker mit Daten zu füllen, um diese zum Schluß rendern zu lassen und zu der aufgerufenen Seite zurück zu senden. 2) Inhalt des Tickers Um den Ticker mit Inhalt zu füllen, muss zunächst der gewünschte Blog ermittelt werden. Hierzu wird aus dem root-Objekt mittels dem root.users-Attribut der gewünschte Benutzer ermittelt. Über das gefundene user-Objekt erhält man mit Hilfe des Attributs user.sites alle Blogs, die diesem Benutzer gehören. Also auch den gewünschten Blog, soweit er dem angegebenen Benutzer gehört. Nun können mit den verschiedensten Standard-Antville-Methoden die aktuellsten Stories und Kommentare gefiltert werden. Nun offenbarte sich aber das eigentliche Problem des JavaScript-Tickers: Wie können die verschiedenen Texte im wechsel im Ticker angezeigt werden, also, wie erhält der Ticker seine Dynamik? Denn sind die gefundenen Daten erstmal vom Helma-Server an den Client gesendet worden, kann der Server ohne das neu Laden der Seite keinen Einfluss mehr auf diese Seite nehmen, um z.B. das Ticker-Textfeld mit neuem Text füllen. Die Lösung bestand darin, dass der Server die nötigen JavaScript-Funktionen als Response mit an den Client schickt, so wird das JavaScript auf dem Client ausgeführt und die dynamische Steuerung des Tickers ist wieder möglich. 3) Aussehen des Tickers Das Aussehen des Tickers wurde über eine Skin-Datei (*.skin) verwirklicht. Hier wurden zunächst alle statischen Informationen als Response für den Client notiert. Z.B., das Layout der Tickerelemente (Titel, Text ...) und die JavaScript-Funktionen, die als Text mit an den Client gesendet werden, um die Dynamik des Tickers zu realisieren. Aber ein solches Skin bietet auch die Möglichkeit, Variablen zu enthalten (<% response.param %>), die über das Response-Objekt (res.data.param="wert") dynamisch "von Aussen" gesetzt werden können. Das bedeutet, dass ich im Skin alle statischen Texte und Werte bereits notieren und den variablen Teil, wie die Anzahl der Texte oder die Höhe des Tickers, nachträglich einfügen kann. So dass der Client zwar über den Response einen festen HTML-Text erhält, welcher auf dem Server aber aus statischen und dynamischen Teilen gerendert wurde. An dieser Stelle würde ich jetzt gerne die relevanten Dateien zum genaueren Verständnis bereit stellen, doch leider existiert in meinem Blog ein Fehler beim Datei hochladen. An dieser Stelle Quelltext zu veröffentlichen halte ich allerdings für unangebracht. Wenn Interesse daran besteht, kann hier gerne eine Anfrage stellen, auf die ich umgehenst antworten werde. ... link ... comment |
Wie der Ticker nun in der Praxis implementiert wurde sehen sie hier ...
... link
... comment