AS für Laufschrift/Newsticker

LuvShining

Erfahrenes Mitglied
Hallo,

zunächst hatte ich angenommen, dass ich für mein Problem JS in Anspruch nehmen müsste, wurde nun aber darauf aufmerksam gemacht, dass in meinem Beispiel Flash verwendet wurde- und so bin ich nun hier, so ist's wenn Frauen nur einmal hinschauen.

Folgendes Problem: Für mein derzeitiges Projekt wurde der Wunsch geäußert einen "Laufband" einzubinden, das aussieht wie auf der Homepage von http://www.youfm.de.
Hier ist im oberen Bereich ein Männchen, welches die "Laufschrift des aktuellen Titels inkl. Interpret hinter sich herzieht".

Hier habe ich nun ein ähnliches Beispiel gefunden:
http://www.tutorials.de/tutorials10592-2.html

Leider wurde die Diskussion vorzeitig abgebrochen und das dort aufgeführte Beispiel läuft bei mir auch leider gar nicht.
Hinzu käme bei mir auch noch die Problematik, ein animiertes "Männchen" vorweg läuft und den Text hinter sich her zieht. Wenn ich das hier richtig verstanden habe, wird der Text hier lediglich eingeblendet?!

Kann mir jemand Hilfestellung geben?

Über eure Hilfe würde ich mich freuen.

Viele Grüße
Nadine
 
Hallo!

ich habe folgenden Vorschlag (in Klammern die Instanznahmen):

Das Männchen wirst du wohl oder übel nur mit einer Frame by Frame-Animation hinbekommen. Nehmen wir mal an du hast einen MovieClip ("Animation") mit einem animierten Männchen drin. Nun kreierst du ein dynamisches Textfeld ("textFeld") auf der Stage und packst Textfeld und MC in einen weiteren MC ("Ticker"). Dort erstellst du dann für das Textfeld und den MC einen Tween, der beide Elemente vom linken an den rechten Rand fahren lässt. Eventuell musst du die Tweens auch noch maskieren, je nach deiner Vorstellung.
Auf das letzte Keyframe des Ticker-MCs setzt du folgenden Code:

PHP:
this.removeMovieClip();
So entfernt sich der Ticker nach seinem Ablaufen von selbst.

Nun löschst du den MC "Ticker" von der Stage, wechselst in die Bibliothek und exportierst den MC "Ticker" in das erste Keyframe mit dem Identifier "Ticker".

Es kommt ein bisschen drauf an, in welcher Form die News vorliegen, das Beispiel geht von einem Array aus (wie z.B. bei XML) und gibt die News zufällig aus.
Nun gehst du in das erste Keyframe des Hauptfilms und codierst folgendermassen:

PHP:
var news = new Array();
var news[0] = "Hallo Welt, bist du bereit für  meinen Newsticker?";
var news[1] = "Wer das liest, ist doof";
var news[2] = "Es lebe tutorials.de";

function erstelleTicker (array) {
   var i = Math.round(Math.rand()*30);
   var u = _root.getNextHighestDepth();
   _root.attachMovie ("Ticker", "Ticker" + u,   u);
   _root["Ticker" add u].textFeld.text = array[i];
}

tickerID = setInterval (erstelleTicker, 200, news); //hier kannst du die Häufigkeit einstellen, mit der ein neuer Ticker erscheint

(nicht getestet!)
Der Idee nach müsste das hinhauen.
Die meisten Funktionen solltest du in der Flash-Hilfe erklärt finden. Sonst frag einfach.

Gruss
 
Zuletzt bearbeitet:
@lue_the_duke: Prinzipiell guter Ansatz! Ich erlaube mir dennoch mal, ein paar kleine Fehler zu korrigieren (klugscheiss). ;)

- Wenn Du "news" als Array deklarierst, kommt vor den Zuweisungen kein "var" mehr:
PHP:
var news = new Array();
news[0] = "Hallo Welt, bist du bereit für  meinen Newsticker?";
news[1] = "Wer das liest, ist doof";
news[2] = "Es lebe tutorials.de";

- Es heisst Math.random(); ;)

- nimm doch gleich
PHP:
int(Math.random() * news.length);
, dann kann man einfach neue Beiträge hinzufügen.

- Nur ein Vorschlag: Statt einem Interval, rufe am Ende des Tweenings vor dem removeMovieClip() die Funktion "nextTicker" auf, dann kommt immer brav einer nach dem nächsten:
PHP:
nextTicker(5000);

function nextTicker(u) {
   var i = int(Math.random() * 3);
   this.attachMovie ("Ticker", "Ticker" + u,   u);
   this["Ticker" + u].textFeld.text = news[i];
}
... und damit Du nicht auf Flash 7 angewiesen bist übergeben wir der Funktion einfach die soeben freigewordene Tiefe:
PHP:
_parent.nextTicker(this.getDepth());

... ich weiß, Du hast das aus dem Kopf geschrieben, aber ich langweile mich grade. ^^

Gruß
.
 
Zuletzt bearbeitet:
Hallo!

@Datic:
Naja, ich finde das nicht sonderlich klugscheisserisch, hätte sich die Dame das Script direkt abgeschrieben, wäre sie wohl ohne deine Hilfe irgendwo im trace-Dschungel gelandet.
Habs halt nicht mehr so mit dem Kopf-Scripten und hab jetzt auch ne ganze Weile nicht mehr gepostet, das nennt sich fehlende Praxis.

Gruss und Dank
 
tja, wenn die Leute wenigstens trace-Aktionen verwenden würden, hätten wir ein leichteres Leben. ^^

Nix für ungut und Grüße
.
 
Hallo ihr Lieben,
ich möchte mich zunächst für eure Hilfe bedanken!
Seit gestern brüte ich nun über eure wirklich ausführliche Rückmeldung und überlege die ganze Zeit, ob ich nicht vielleicht versuchen sollte doch etwas anderes zu machen, denn ehrlich gesagt komme ich nicht so wirklich schnell voran als 'Beginner' :rolleyes:

Mal sehen, ich bin ja geduldig ;)

Grüße
Nadine
 
Zurück