Question

J'utilise mootools-1.2.3 pour le moment et je ne parviens pas à rendre une variable accessible en dehors d'une fonction.

Je dois définir la variable dans la fonction domready, car sinon le DOM n'a pas été chargé et les fonctions de sélecteur ne fonctionneront pas (je ne peux pas placer le script à la fin du code HTML si je n'ai pas le contrôle sur lorsque le cadre écrit les références aux scripts externes).

Est-il possible de référencer la même variable dans une autre fonction?

window.addEvent('domready', function() {
    var myVar = new myClass('someURL', 'elementSelectorString');
    document.addEvent('click', function(event) {
        myVar.doSomeStuff(var1, var2);
    });
});

window.addEvent('unload', function(event) {
    // Reference to myVar variable in domready function.
    myVar.cleanUpStuff();
});
Était-ce utile?

La solution

Placez var myVar; au premier niveau (au-dessus de addEvents), puis supprimez le var de la fonction domready. Les variables sont visibles dans la portée dans laquelle elles sont déclarées.

Autres conseils

les variables globales sont en réalité des propriétés de l'objet window, vous pouvez donc utiliser:

window.myVar

Définissez simplement myVar sans le mot clé var . L'absence de var lors d'une affectation implique une approche globale.

window.addEvent('domready', function() {
    myVar = new myClass('someURL', 'elementSelectorString');
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top