tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
1134
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
DIESES THEMA IST
GESCHLOSSEN
  1. #1
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    Hi,

    Ich habe folgendes Problem in meinem Flashfilm:

    Ich habe den Hauptfilm, und 2 andere .swf Dateien

    Im Hauptfilm befindet sich Viereck, in das durch "loadMovie" die 2 anderen .swf Dateien hineingeladen werden, zum laden der unterfilme gibt es 2 Buttons.

    Die unterfilme sind beide mit einem selbstgebauten Scrollbalken versehen, aufgebaut wie im Flash-Tutorial auf dieser Seite von Tobias Menzel (sry falls der Name falsch geschrieben ist )
    Außerdem habe ich selbst noch eine Mausrad-Scrollfunktion eingebaut:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    var listener = new Object();
    listener.onMouseWheel = function(delta) {
        var offsett = (delta / Math.abs(delta));
        window.container._y += 50 * offset;
        scroller.slider._y -= 45 * offset;
        window.container.reSize();
     
        // Content Position
            if (window.container._y > 0) {
            window.container._y = 0;
        }
            if (window.container._y < -150) {
            window.container._y = -150;
        }
        // Slider Position
                if (scroller.slider._y > 136) {
            scroller.slider._y = 136;
        }
            if (scroller.slider._y < -1) {
            scroller.slider._y = 0;
        }
        ypsilon = window.container._y;
        epsilon = scroller.slider._y;
    }
    Mouse.addListener(listener);

    (epsilon und ypsilon dienen nur zur Ausgabe der Positionen für ein dynamisches Textfeld, war nur für mich um die Positionen zu bestimmen.)

    Folgendes Problem nun:
    Wenn ich im Hauptfilm durch den Button diesen Film Lade, in dem der obere Actionscript drin ist, dann funktioniert alles 1 a, z.B. brauche ich das Mausrad 3 mal zu scrollen und der text ist ganz unten, dabei bewegt sich der Scrollbalken auch 3 mal runter.

    Wenn ich jetzt allerdings nochmal auf den Knopf drücke, spricht, die .swf Datei nochmal Lade, ändern sich die Scrollproportionen total, der film ist nach einem Mausrad-dreher schon in der Mitte, der Scrollbalken bewegt sich dementsprechend.

    und wenn ich nun nochmal auf den button klicke, scrollt sich der Film durch einmal drehen jetzt schon komplett zum Ende (Scrollbalken auch).
    Scrollbalken und Inhalt bewegen sich immer zusammen, aber umso öfter ich auf den Button klicke, umso mehr scrollt der Inhalt hoch bzw. runter, warum?

    Es kommt mir so vor, als würde auf den wert zum scrollen z.B. 50 beim nächsten klick auf den Button nochmal 50 oder so dazu kommen.
    Hab schon einiges probiert, z.B. einige Variablen auf 0 zu setzen, removeListener, etc.
    kann aber natürlich auch sein das ich diese falsch plaziert habe..

    Vieleicht könnt ihr mir ja weiter helfen wäre echt total froh darüber!!
    Danke im Vorraus, Skippy
    Geändert von Skippy (22.04.06 um 16:23 Uhr)
     

  2. #2
    Registriert seit
    Mar 2004
    Ort
    Basisrealität
    Beiträge
    12.118
    Blog-Einträge
    7
    Hi,

    das kommt daher, dass der Mouse-Listener beim Reload der swf nicht gelöscht wird und weiterhin aktiv ist - beim Drehen des Mausrades wird die entsprechende Funktion also zweimal ausgeführt (nach jedem Reload einmal mehr).

    Du solltest vor jedem Neuladen alle Listener "manuell" löschen - schau Dir dazu mal die Funktion "removeListener" an.

    Gruß
    .
     

  3. #3
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    erstmal danke für deine Antwort.

    Also removeListener hab ich eigentlich schon versucht, kannst du mir vieleicht sagen wo genau der stehen muss und noch wie der aussehen soll, dass ich auch nichts falsch mache

    danke im vorraus, Skippy
     

  4. #4
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    Zum testen habe ich einfach einen neuen Film erstellt, nur ein Viereck in den der Content reingeladen wird und ein einfacher button, der Button besitzt folgenden Text:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    on (press) {
        Mouse.removeListener(listener);
        Mouse.removeListener(listener_start);
        removeListener(listener);
        removeListener(listener_start);
        _root.test.removeListener(listener_start)
        _root.test.removeListener(listener)
        test.removeListener(listener)
        test.removeListener(listener_start)
        _root.test.loadMovie ("startseite_F.swf");
    }

    Und es bringt GARNICHTs ((
    plz help!!

    ,Skippy

    ====
    EDIT:
    ====

    Jetzt hab ich noch zur externen .swf über dem Haupt-Actionscript (der ganz oben steht) noch folgendes drüber geschrieben:

    Code :
    1
    2
    3
    4
    
    Mouse.removeListener (listener);
    offset = 0;
    delta = 0;
    var listener = delete Object();

    Und das bringt auch nichts...

    MfG Skippy
    Geändert von Skippy (21.04.06 um 07:56 Uhr)
     

  5. #5
    Registriert seit
    Mar 2004
    Ort
    Basisrealität
    Beiträge
    12.118
    Blog-Einträge
    7
    Hi,

    wahrscheinlich hast Du den Pfad zu Deinem Listener falsch angegeben - ohne die Datei zu sehen, kann ich Dir nicht sagen, wo der Fehler sitzt.

    ... und was soll das:
    var listener = delete Object();
    bedeuten?

    Gruß
    .
     

  6. #6
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    ... und was soll das:
    Code :
    1
    
    var listener = delete Object();
    bedeuten?

    Gruß
    .
    Das ist das ergebniss zig verzweifelter Versuche es hinzubekommen ohne erfolg (Ich hab eben alles getestet...)

    So, im Anhang befinden sich:

    TEST.fla <---- Hauptfilm
    TEST.swf <---- Hauptfilm
    start_F.fla
    start_F.swf

    http://www.gabbagandalf.de/mousewheel_bug.rar


    Dass es irgend ein Fehler sein soll wie falscher pfad, Tippfehler etc. glaub ich kaum, dazu hab ich mir das Teil zu oft durchgeschaut, wenn doch, ist es ein schlechtes Omen...

    Bitte um Hilfe!
     

  7. #7
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    Also ich bin schon die ganze Zeit am testen, ich versuch wirklich alles Mögliche, vieleicht kann mir jemand eine sehr kleine und einfach gebaute testdatei machen ohne viel Aufwand? Bitte helft mir ich verzweifle noch...

    Ich muss das hinkriegen so schnell wie möglich.

    MfG Skippy
     

  8. #8
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    Langsam werde ich total wahnsinnig...

    Ich habe jetzt den von oben erwähnten Film genommen, der reingeladen wird, da 2 Buttons reingesetzt, und den Actionscript der das Scrollen ermöglicht, da reingesetzt unter

    Code :
    1
    2
    3
    
    button.onPress = function () {
     >> Hier der Actionscript von oben <<
    }

    und für den anderen Button folgendes:

    Code :
    1
    2
    3
    
    button1.onPress = function () {
    Mouse.removeListener(listener);
    }

    Der Code liegt auf einer extra Ebene die "Code2" heist, auf der keine bilder, MCs oder sonstwas liegen, und es ist alles im 1. Frame.

    Soweit sogut.
    Das Scrollen geht erst sobald ich "button" drücke, und wenn ich ihn nochmals drücke, taucht das von mir oben beschriebe Problem auf, aber wenn ich auf "button1" drücke, na was passiert dann?

    GARNICHTS

    Arrrrrrrrrrgh ich werde wirklich wahnsinnig ich lauf gleich amok, warum geht den das nicht? : - ((((((((((((


    helft mir bitte ich bin am verzweifeln : - (


    Mit trauernden Grüßen, Skippy
    Geändert von Skippy (22.04.06 um 15:47 Uhr)
     

  9. #9
    Avatar von Skippy
    Skippy Skippy ist offline Mitglied Silber
    Registriert seit
    Jan 2004
    Beiträge
    59
    Es ist vollbracht!

    Nach

    ZAHLREICHEN...

    ENDLOSEN....

    ERMÜDENDEN....

    Versuchen... ist es mir ENDLICH gelungen eine alternative zu finden, die zu keinen Probleme führt, und die funktioniert...
    Es ist zwar nicht wirklich das was ich gesucht habe, doch es funktioniert, es gibt zwar ein paar kleine Eingrenzungen, doch es funktioniert

    Jetzt weiss ich auch woran es lag, und ich wäre immernoch froh wenn ihr mir ein Problem beantworten könntet:

    WIE kann vom Hauptfilm aus, den Mouse Listener einer .swf Datei löschen, der im Hauptfilm durch loadMovie eingelesen wurde?
     

  10. #10
    Avatar von umlart
    umlart umlart ist offline Mitglied Brokat
    Registriert seit
    Jan 2005
    Beiträge
    291
    Zitat Zitat von Skippy

    WIE kann vom Hauptfilm aus, den Mouse Listener einer .swf Datei löschen, der im Hauptfilm durch loadMovie eingelesen wurde?
    indem man den Pfad anspricht..
    nun kommt es darauf an wie die swf geladen wurde..
    in ein Container..?
    in ein level..
    P.S.
    auf dein Startseitebutton
    on(press) {
    Mouse.removeListener(_root.test.listener);...usw

    und verwende bitte keine von Flash reservierten Wörter wie zb.. listener
    Geändert von umlart (22.04.06 um 21:18 Uhr)
     
    *Man muß nicht wissen wie es geht!*
    *Man muß nur wissen wo es steht!*

  11. #11
    Registriert seit
    Mar 2004
    Ort
    Basisrealität
    Beiträge
    12.118
    Blog-Einträge
    7
    .. Jungs, pusht Eure Threads doch nicht andauernd und bitte auch nicht mit riesen-Alarmschrift ...
    .
     

Ähnliche Themen

  1. Seite entdeckt - mit Mausrad scrollen
    Von Denniz im Forum Flash Plattform
    Antworten: 5
    Letzter Beitrag: 02.09.06, 17:29
  2. Probleme beim scrollen
    Von kingafro im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 21.07.05, 13:47
  3. Mausrad scrollen konfigurieren! unbedingt reinschaun!
    Von Gragi im Forum Javascript & Ajax
    Antworten: 3
    Letzter Beitrag: 26.04.05, 01:06
  4. probleme scrollen in Netscape 7 am mac
    Von v_ero im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 19.07.04, 13:38
  5. Probleme mit dem Scrollen
    Von thebestmaster im Forum HTML & XHTML
    Antworten: 3
    Letzter Beitrag: 15.03.04, 14:47