Rechercher : dans
Par :

JavaScript : stockage de variable

Dernière réponse le 27 oct 2008 à 14:07:33 Ju, le 27 oct 2008 à 13:31:31 
 Signaler ce message aux modérateurs

Bonjour,

J'ai un petit soucis pour un site que je construit, c'est sûrement une bricole, mais j'arrive vraiment pas à comprendre pourquoi mon code ne fonctionne pas (ni sous Firefox, ni sous IE):

Au chargement de la page, j'ouvre un popup (ça ça marche, encore heureux), et je veux fermer le popup en cliquant sur lien de la page de départ. C'est facile pourtant, non ?

Voici mon code :

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>
  <script language="javascript">
var Sys;
// Lancement de la Démo
function startDemo(){
Sys = window.open('AdresssePopup','Nom','Paramètres');
}
// Fermeture des fenêtres de démo
function stopDemo(){
Sys.close();
}
  </script>


Quand j'appelle startDemo() dans le onload du body, tout se passe bien, donc j'imagine que ma variable Sys contient bien l'objet window qui vient d'être créé.
Mais quand j'appelle stopDemo() sur le onClick de mon lien, la console d'erreur Firefox me dit :"Sys is undefined" et m'envoie à la ligne1 de ma page (la déclaration DocType)...
Pourquoi ??

Merci de m'aider !
Configuration: Windows Vista
Firefox 3.0.3

Meilleures réponses pour « JavaScript : stockage de variable » dans :
Javascript - Les variables Voir Le concept de variable Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. En Javascript, les noms de variables peuvent être aussi long que l'on désire,...
[Shell] Tester une variable numérique VoirTester une variable numérique    Préambule Dans un environnement "shell", les variables sont, par défaut, de type "chaîne de caractères". De ce fait il n'est pas possible de déclarer une variable de type "entier" (enfin, ceci n'est pas tout à...
Comment récupérer le résultat d'une commande dans une variable VoirComment récupérer le résultat d'une commande dans une variable Préambule Syntaxe Exemples Préambule Il est bien souvent nécessaire de récupérer le résultat d'une commande (ou de son code retour) dans une variable afin de pouvoir...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...
Javascript - Les tableaux VoirIntroduction à la notion de tableau Les variables de Javascript ne permettent de stocker qu'une seule donnée à la fois. Or, étant donné qu'il est souvent utile de manipuler de nombreuses données, le concept de variable se révéle parfois...
Javascript - L'objet Date VoirLes particularités de l'objet Date L'objet Date permet de travailler avec toutes les variables qui concernent les dates et la gestion du temps. Il s'agit d'un objet inclus de façon native dans Javascript, et que l'on peut toujours utiliser. La...

1

Fricky42, le 27 oct 2008 à 13:42:20
  • +1

Etrange car chez moi tout marche niquel.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>
  <script language="javascript">
var Sys;
// Lancement de la Démo
function startDemo(){
Sys = window.open('AdresssePopup','Nom','Paramètres');
}
// Fermeture des fenêtres de démo
function stopDemo(){
Sys.close();
}

startDemo();
  </script>

  <table>
  <tr><td onclick='stopDemo()'>
  sgdfgfdg
  </td></tr>
  </table>

</body>
</html>


... Montre moi le reste de ton code. Le "lol" est aux boulets ce que le ";" est aux programmeurs
b2eda605511811988d04704ed7e809a4

Répondre à Fricky42

2

Ju, le 27 oct 2008 à 14:03:18

Merci de répondre aussi vite !

Ben ok, voici le corps de la page :

<body style="background-color: rgb(60, 62, 121);"
 alink="#ee0000" link="#0000ee" vlink="#551a8b">
<br>
<table style="width: 601px; height: 373px; background-color: white;">
  <tbody>
    <tr>
      <td style="text-align: center; vertical-align: middle;">
      <h2 style="color: rgb(0, 138, 74);">Démonstration</h2>
      </td>
    </tr>
    <tr>
      <td
 style="background-color: white; text-align: center; vertical-align: middle;"
 onclick="startDemo();"><img
 style="width: 128px; height: 128px;" alt="Lancer la démo"
 src="Abstract2b.jpg"> </td>
    </tr>
    <tr>
      <td align="center">
      <a onclick="Sys.close();" href="">Fermer les
fenêtres</a>
      </td>
    </tr>
  </tbody>
</table>
<br>
</body>
</html>


Et il n'y a pas à dire, je comprends toujours pas pourquoi ça marche pas...
Ha et sous IE l'erreur est : Ha ben ça alors, maintenant ça marche sous IE !!

Répondre à Ju

4

 Fricky42, le 27 oct 2008 à 14:07:33

C'est bizare chez moi ca marche niquel.

Va sur la page et fait un CTRL-SHIFT-R et retest.
Le "lol" est aux boulets ce que le ";" est aux programmeurs
b2eda605511811988d04704ed7e809a4

Répondre à Fricky42

3

Ju, le 27 oct 2008 à 14:05:36

Heu ben là désolé, je dois être fou, ça marche aussi sous Firefox maintenant... j'ai bidouillé un truc ou deux, mais je pensais être revenu à mon code départ...

...

Bon le tout c'est que ça marche !
Merci de t'être intéressé à mon cas !

Répondre à Ju
Collection CommentÇaMarche.net