| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| FlashWorker Registriert seit: Jan 2006 Ort: Großröhrsdorf (bei Dresden)
Beiträge: 13
|
Hi Leute, Bin grade dabei eine dynamische Blendenfunction zu programmieren, nur hab ich da ein paar kleiner Probleme. Undzwar erklär ich es mal kurz. Es wird ein Bild geladen und eingeblendet. Wenn ich ein anderes Bild mir anzeigen lassen will soll das Vorhergehende Bild ausgeblendet werden und das neue eingeblendet. Für Ein- und Ausblendeffekte habe ich zwei Funktionen. beim ersten einblenden macht clearInterval() seinen Job, nur wenn ich ein Interval in einem Interval erzeuge, welches gerade gestoppt wurde, kann das neue Interval nicht mehr gelöscht werden, d.h. clearInterval() wird quasi gesagt ignoriert. egal ob ich PHP-Code: Selbst wenn ich die IDs der Intervalle an einen MC hänge wird das löschen ignoriert. Es läuft dann immer der Einblendeffekt weiter und ich kann ihn nicht stoppen. Hier mal Code: PHP-Code: |
| | |
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
| wow, das dürfte die kürzeste erklärung gewesen sein, die ich je gesehen habe ;-) leider habe ich nicht so viel zeit deinen kurzen betrag komplett zu lesen. generell: - es schadet nichts, vorher ein altes si zu unterbrechen - immer darauf achten, das keine si-nummer überschrieben wird, bevor das alte si nicht gestoppt wurde. clearInterval(si); si=setInterval(...
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #3 (permalink) |
| FlashWorker Registriert seit: Jan 2006 Ort: Großröhrsdorf (bei Dresden)
Beiträge: 13
|
Das Tolle ist ja ich lasse mir die si auch anzeigen. Alsi als si wird 4 angezeigt, nur kann ich machen was ich will. Woher weiß ich eigentlich welche Intervalls noch laufen und welche nicht? Es wird für jedes Interval einen neue si produziert, halt eine fortlaufende Nummer wie bei SQL "autoincrement". Bei einer Galerie wäre das schon sehr aufwendig die ganzen si zu prüfen ob sie vorhanden sind oder nicht und sie alle zu "clearen". Aber ch werde es mal ausprobieren, danke dir für deine schnelle Antwort. |
| | |
| | #4 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
ein setInterval behält immer seine nummer. könnte man als prozessnummer verstehen. das hintereinander in eine variable unterschiedliche setInterval-nummern gespeichert werden und dadurch intervalls übrig bleiben ist ein klassiker. sowas passiert z.b. auch wenn ein frame verlassen und ein objekt gelöscht wird: das setInterval läuft weiter. da hilft wirklich nur gewissenhaft jedes erzeugte interval auch wirklich zu löschen. - das mit dem generell vorher löschen, bevor ein neuer interval gestartet wird hilft - ansonsten alle intervall-nummern in ein array packen: http://www.seibsprogrammladen.de/fra...thmen/Interval mehrere Interval's
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |