Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Variable von Flash zu JS wird von JS ignoriert... [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Variable von Flash zu JS wird von JS ignoriert...


 
Metallica
26-11-2001, 17:39 
 
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.

 
Sky
26-11-2001, 18:04 
 
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?

 
Metallica
26-11-2001, 18:09 
 
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!

 
Sky
26-11-2001, 18:12 
 
TRUE und FALSE sind Konstanten, hier kommt TRUE aber als String rüber.

Lösung:

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

 
Metallica
26-11-2001, 18:47 
 
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?");
}
}

 
Sky
26-11-2001, 19:56 
 
var beenden = "";
function winclose(beenden){
if(beenden == "true") {
window.close();
} else {
confirm("Wirklich beenden?");
}
}

 
Metallica
26-11-2001, 20:27 
 
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.

 
Metallica
27-11-2001, 09:48 
 
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();
}
}

 
Metallica
29-11-2001, 21:32 
 
@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.

 
Metallica
01-12-2001, 15:35 
 
Sky???

 
Sky
01-12-2001, 16:17 
 
Und wenn du dann die Deklaration in JS einfach weglässt?

 
Metallica
02-12-2001, 13:29 
 
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??

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:57 Uhr.