setInterval funtzt nicht...

Metallica

Lounge-Member
hi leuts,

seht euch mal meine fla an.
ich hab da zwei newscorners und beide mc's auf der bühne liegen die ich per setInterval im 20 sekunden rhythmus starte.

der linke news(corner) startet sofort und nicht erst nach 20 sek. der rechte (mehrzeilige) allerdings nicht.
und ich weiß echt nicht warum...

wenn man die swf startet soll es nicht so sein, dass man eben 20 sekunden gar nichts sieht und dann werden die news nacheinander eingeblendet. die erste news beider newscorner soll gleich beim starten des swf's kommen.


:confused:
 
nicht: _root.onLoad = newsIntervalH;

sondern nur am ende der function:

newsIntervalH()


weil sie wie dus gemacht hast ist es nichts anderes als wenn du in javascript in den body das schreibst:
<body onload="setTimeout('newsIntervalH()',20000)">

hier wird in 20 sek die function gestartet.
 
Also der Fehler liegt darin, daß Du zweimal fast identische Skripte parallel laufen lassen willst. _root hat nur ein onLoad, weswegen "_root.onLoad = newsInterval;" wohl das zuletzt gesetzte ist und deshalb nur dieses am Anfang abläuft. Wenn Du mehrere Benachrichtigungen benötigst, dann mußt Du vermutlich mit Listenern arbeiten....
Aber da Du eh nicht möchtest, daß die beiden Funktionen am Anfang loslegen, solltest Du beide onLoads rausnehmen. Desweiteren ist es wenig sinnvoll Skripte auf tausende Ebenen zu verteilen. Mach lieber eine eigene Ebene "Action" in der Du alle Skripte und Label ablegst (dies gilt nicht nur für die Haupt Zeitleiste, sondern am besten auch für alle untergeordneten Movies). Das macht es übersichtlicher und solche Fehler fallen auch Dir schon eher auf.
Desweiteren kann man genausowenig wie in JS mehrere "setInterval"s parallel laufen lassen. Du mußt Dir also eine Zwischenfunktion ausdenken, die vom setInterval angetriggert wird, um dann beide News Texte zu aktualisieren.
 
oh...mist...hab ehrlich peinlicher weise das andere script übersehn.....

wenn beide gleichzeitig starten sollen, weil so sieht das script ansich aus (wenn ich das jetzt richtig kappiert hab), dann kannst du doch die ausgabe über ein funktion steuern oder geht das nicht!?
 
hmm,
hab jetzt 'ne ebene "actions" angelegt. aber was schreib ich dort jetzt hinein??
das mit dem setinterval??
und wie rufe ich das ganze dann auf??

hab sowas in flash noch nicht gemacht.
die hilfe hat mir auch nicht wirklich weitergeholfen.

kannst du mir das bei meiner datei machen?
 
okay hoff echt das ich das jetzt hier nicht verraffe und du eigentlich was ganz anderes wolltest.

ach und wenn du für ein dynamisches textfeld ein variablen namen festlegst den man im inspektor fergeben kann, brauchst du kein .text davor zuschreiben und weis nicht ob der instanzname für das dym.- textfeld unbedingt notwendig ist, jedenfalls in deinem fall.
 

Anhänge

  • mynews.zip
    8,3 KB · Aufrufe: 25
Die Verwendung eines Variablennames bei einem Textfeld ist deprecated und sollte ab Flash 6 nicht mehr genutzt werden. Will man Flash 4/5 Content publishen, dann geht es nicht anders, bei Flash 6 ist es sehr zu empfehlen, da man durch die Zuweisung eines Instanznamens zusätzliche Funktionen und Features des Textfeldes nutzen kann, die sonst verborgen blieben!
 
Zurück
Oben