Variable von Flash in JS-Function übernehmen...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Variable von Flash in JS-Function übernehmen...

    Hi Leute!

    Die Variable beenden bekomme ich von Flash mit Wert true und will diese an meine function winclose übergeben.
    Das Problem: ich setze die Var. vorher in JS defaultmäßig auf false und das ist auch gut so.
    Kommt allerdings von Flash "beenden=true", dann soll der die defaulteinstellung ignorieren und "true" in die fuction übernehmen.

    Von Flash schick ich's folgendermaßen rüber:
    on (release) {
    beenden = true;
    getURL ("java script:winclose ("+beenden+");");
    }

    <script language="JavaScript">
    beenden=false;
    function winclose(beenden){
    if(beenden == false) {
    Check = confirm("Wirklich beenden?");
    } else {
    window.close();
    }
    if(Check == false) window.open("myfile.htm","","toolbar=no,menubar=no,resizeable=no,width=720,height=500");
    }
    </script>


    Könnt ihr mir da helfen??

    [Editiert von Metallica am 22-11-2001 um 13:33]
    $PHP resource 4ever$

  • #2
    Ich hab den code jetzt umgedreht und die globale deklaration "beenden=false;" rausgenommen. Die war nämlich daran schuld, dass die Var. nie "true" werden konnte.

    Jetzt hab ich allerdings das Problem, dass der Browser solange nicht in die If reinkommt bis beenden true ist.
    Mein Ziel: Er soll immer in die If reinkommen und solange von Flash nicht "true" kommt soll er in die else reinkommen und confirm ausführen.

    Könnt ihr mir da weiterhelfen??

    <script language="JavaScript">
    function winclose(beenden){
    if(beenden == true) {
    window.close();
    } else {
    Check = confirm("Wirklich beenden?");
    }
    if(Check == false) window.open("myfile.htm","","toolbar=no,menubar=no,resizeable=no,width=720,height=500");
    }
    </script>
    $PHP resource 4ever$

    Kommentar


    • #3
      Wann könnte denn z.B. was von Flash kommen?

      CAT Music Files

      Kommentar


      • #4
        naja, ich erklärs mal:
        ich hab da so ein flashspiel. wenn der user während des spiels auf "x" klickt dann soll die confirm-meldung "wirklich beenden?" kommen. Drückt er bei der confirm auf OK dann ist's geschlossen. Sagt der hingegen "Abbrechen" dann lädt sich das flashfile neu und er kann wieder spielen.
        In diesem fall soll die variable beenden immer false sein damit er confirm bringt.

        Im Flashspiel hab ich aber am Ende des Spiels einen Button "beenden". Wenn er den drückt, dann handelt es sich ja um ein - sag ich mal - "korrektes" beenden und er soll in javascript nicht in die confirm reingehen, sondern einfach window.close ausführen.
        Dafür sende ich ja beenden = true rüber.

        Das Problem bei JS: Wenn ich beenden defaultmäßig auf false setze, behält die Variable (oder in diesem Fall Konstante) immer diesen Wert und ignoriert "true" von Flash.

        Deshalb hab ich jetzt mal versucht, die Var. auf ihre Existenz zu prüfen. Denn solange von flash kein true kommt und ich beenden nicht in JS setze, existiert die Var. nicht und ich weiß, dass ich in die confirm rein muss.
        Dazu hab ich folgendes versucht:
        if (typeof(beenden) != 'string') {
        beenden = false;
        }
        function winclose(beenden){
        if(beenden == true) {
        window.close();
        } else {
        Check = confirm("Wirklich beenden?");
        }
        if(Check == false) window.open //Erklärung:Click auf Abbrechen=>Check = false;("myfile.htm","","toolbar=no,menubar=no,resizeable=no,width=720,height=500");
        }


        geht aber auch nicht, denn wenn ich testweise beenden=true setze kommt auch 'ne confirm. Allerdings nicht meine ("wirklich beenden?"), sondern "Der Browser versucht die Website zu schließen. Ja oder nein?". In beiden Fällen schließt er das fenster. Ich hab aber keine Ahnung wo diese Confirm herkommt?????

        [Editiert von Metallica am 23-11-2001 um 10:28]
        $PHP resource 4ever$

        Kommentar


        • #5
          Der Hinweis kommt vom Browser...

          Wie das jetzt nun aussehen muss, damit es funktioniert, weiß ich allerdings auch nicht... Ich überleg es mir vielleicht später noch einmal.

          CAT Music Files

          Kommentar


          • #6
            JA bitte Sky.
            Ich hab echt schon jede Referenz durch. Wenn das nicht mit der Existenz checken funkt, dann weiß ich echt nicht weiter.
            $PHP resource 4ever$

            Kommentar


            • #7
              kann mir vielleicht noch jemand anderer zu diesem Thema weiterhelfen????

              bin echt am ende mit meinem latein
              $PHP resource 4ever$

              Kommentar


              • #8
                mach die Abfrage doch in Flash ... wenn dann bei "Wirklich beenden" ein JA kommt, beendest du Flash einfach mit einer Weiterleitung an die Seite, die halt als nächstes aufgerufen wird.
                mein Sport: mein Frühstück: meine Arbeit:

                Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                Kommentar


                • #9
                  @Titus:
                  genau das ist ja das Problem. Ich hab in Flash da 'nen "END"-Button gemacht und wenn der gedrückt wird sende ich wie folgt an JS:
                  on (release) {
                  beenden = true;
                  getURL ("java script:winclose ("+beenden+");");
                  }


                  D.h. es wird keine weitere htm mehr aufgerufen, sondern das window geschlossen.
                  $PHP resource 4ever$

                  Kommentar


                  • #10
                    Ich meinte eigentlich, dass du einfach einen neuen Frame in die Flash-Datei einfügst, in dem du die Abfrage veranstaltest. Den Frame rufst du bei Klick auf END auf.
                    Bei Klick auf "aber sicher!" schließt du das Fenster, bei Klick auf "nö, nochmal von vorn" geht´s im ersten Frame weiter.
                    mein Sport: mein Frühstück: meine Arbeit:

                    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                    Kommentar


                    • #11
                      hmmm, verstehe nicht ganz wie du das meinst.

                      ich versuche, das problem nochtmal genauer zu erklären:
                      in der "myfile.htm" ist das flashfile drinnen, das beim Aufruf dieser Seite geladen wird.
                      wenn der user dieses window wieder schließen will, hat er zwei möglichkeiten:
                      Entweder übers "x" => dann soll 'ne confirm-message kommen die ich im javascript-teil der myfile.htm drinnen habe
                      oder
                      über den END-Button der im Flash file drinnen ist => drückt er diesen, dann soll sich das fenster OHNE confirm schließen.

                      Verstehst du's??
                      $PHP resource 4ever$

                      Kommentar


                      • #12
                        hmm ... das funzt nicht.
                        onUnload ermöglicht die zwar, bei Schließen des Fensters ein anderes zu öffnen; aber du kannst nicht verhindern, dass der Nutzer das Fenster mit dem X am Windows-Window schließt. (Wenn ich dich jetzt richtig verstanden habe, meinst du jenes X)
                        mein Sport: mein Frühstück: meine Arbeit:

                        Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                        Kommentar


                        • #13
                          jaja, das ist schon klar, dass ich ihm am X nicht hindern kann.
                          er soll es auch so schließen können.
                          nur soll dann eben die confirm kommen, was er ja auch macht.

                          es soll nur dann KEINE confirm kommen, wenn er das window über meinen Flash-button "END" schließt.
                          deshalb sende ich ja "beenden=true" von flash an JS.
                          Aber genau dieser teil funtzt nicht!
                          dafür muss es doch 'ne lösung geben. Nur welche??
                          $PHP resource 4ever$

                          Kommentar


                          • #14

                            Titus???
                            $PHP resource 4ever$

                            Kommentar


                            • #15
                              hab drüber nachgegrübelt.

                              Leite beim Klick auf beenden an eine (HTML-)Seite weiter, die das Fenster ohne confirm schließt.
                              mein Sport: mein Frühstück: meine Arbeit:

                              Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

                              Kommentar

                              Lädt...
                              X