Variable von Flash zu JS wird von JS ignoriert...

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

  • Variable von Flash zu JS wird von JS ignoriert...

    Hi Leute!

    Ich habe eine js-function "winclose" die die Variable "beenden" von flash bekommt.

    Vorher setze ich beenden auf false damit JS in die confirm reinkommt.

    Das Problem ist aber, dass beenden immer den Wert false beinhaltet, auch wenn von Flash beenden=true kommt und das soll ja nicht sein.

    Wißt ihr vielleicht, woran das liegt??

    Code:
    beenden=false;
    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");
    }


    Anm.:
    Von Flash kommt beenden=true 100%ig so rüber - hab ich getestet.

    $PHP resource 4ever$

  • #2
    Original geschrieben von Metallica
    Das Problem ist aber, dass beenden immer den Wert false beinhaltet,[...]
    Von Flash kommt beenden=true 100%ig so rüber - hab ich getestet.
    Wie jetzt?

    CAT Music Files

    Kommentar


    • #3
      was meinst du mit wie jetzt??

      Ich versuch's nochmal:
      Solange von Flash nicht beende=true kommt existiert die variable nicht und JS kommt nicht in die confirm rein.
      Deshalb hab ich die Var. außerhalb der function auf false gesetzt und für den fall dass flash was rübersendet soll sie dann eben true annehmen.
      sie bleibt aber immer false!
      $PHP resource 4ever$

      Kommentar


      • #4
        TRUE und FALSE sind Konstanten, hier kommt TRUE aber als String rüber.

        Lösung:

        beenden="";
        function winclose(beenden){
        if(beenden == "true") {
        [...]

        CAT Music Files

        Kommentar


        • #5
          hab's grad getestet.
          wenn von flash beenden=true rüberkommt, bringt mir der browser aber trotzdem die confirm-message.

          beenden = "";
          function winclose(beenden){
          if(beenden == "true") {
          window.close();
          } else {
          confirm("Wirklich beenden?");
          }
          }

          $PHP resource 4ever$

          Kommentar


          • #6
            var beenden = "";
            function winclose(beenden){
            if(beenden == "true") {
            window.close();
            } else {
            confirm("Wirklich beenden?");
            }
            }

            CAT Music Files

            Kommentar


            • #7
              ahh, es funkt auch mit var davor nicht.

              da fällt mir was ein. geht's vielleicht so:
              if (window.close == true) {
              Check = confirm("Wirklich beenden?");
              }
              if(Check == false) window.open("myfile.htm","","toolbar=no,menubar=no,resizeable=no,width=720,height=500");
              }

              function winclose(beenden){ //so würd's zumindest mit
              //beenden=true von Flash funken
              if(beenden == true) {
              window.close();
              }
              }


              Anmk:
              Hab mal testweise versucht von flash nicht true zu senden, sondern "1" weil ja true 'ne boolsche var. ist und JS vielleicht deswegen durcheinander kommt. Hat aber auch ned geholfen.
              $PHP resource 4ever$

              Kommentar


              • #8
                Hab jetzt den code noch ein bißchen modifiziert.
                So wie folgt müßte es funken:
                ich rufe jetzt direkt von flash die function auf denn da soll ja nie die confirm kommen.

                Klickt der user allerdings auf das "x", dann soll sie immer kommen.
                Deshalb frage ich ab, ob window.close true ist.
                Bei der if paßt allerdings irgendwas noch nicht.
                Aber was???

                if (window.close == true) {
                Check = confirm("Wirklich beenden?");
                }
                if(Check == false) window.open("myfile.htm","","toolbar=no,menubar=no,resizeable=no,width=720,height=500");
                }

                function winclose{ //ruf ich von Flash auf
                if(beenden == true) {
                window.close();
                }
                }
                $PHP resource 4ever$

                Kommentar


                • #9
                  @Sky
                  kurz noch was zur erläuterung:
                  solange ich von flash nix rübersende, hat die beenden-variable keinen wert und existiert somit nicht.
                  setze ich sie aber defaultmäßig direkt in JS, dann nimmt sie keinen anderen wert an.
                  genau das ist das problem.
                  $PHP resource 4ever$

                  Kommentar


                  • #10

                    Sky???
                    $PHP resource 4ever$

                    Kommentar


                    • #11
                      Und wenn du dann die Deklaration in JS einfach weglässt?

                      CAT Music Files

                      Kommentar


                      • #12
                        ja dann haben wir das problem, dass die variable ja nicht existiert (weil sie nicht gesetzt ist) und JS kommt mir nie in die function.
                        zwischenzeitlich hab ich allerdings 'ne möglichkeit gefunden, ihre existenz abzufragen.
                        dafür brauch ich jetzt keine function mehr, sondern lediglich 'ne if-abfrage.

                        sieh selbst:
                        if(beenden) { // ja - var. existiert weil von flash beenden=true rübergekommen ist
                        confirm("Wirklich beenden?");
                        }
                        else { // nein - exist. nicht weil von flash nix rübergekommen ist
                        window.close();
                        }


                        das Problem:
                        JS kommt mir leider nie in die if rein weil ich nie 'ne confirm-message bekomme. Hab nämlich testweise die confirm auch mal in den else-zweig reingeschrieben.
                        'ne idee worans scheitert??
                        $PHP resource 4ever$

                        Kommentar

                        Lädt...
                        X