Tout en développant une extension firefox, je crée une fenêtre de l'assistant de overlay.js en utilisant:Fermeture Assistant XUL de overlay.js
this.wizard = window.openDialog("chrome://firenow/content/wizard.xul", "","chrome, dialog, modal, resizable=no", params);
this.wizard.focus();
Comment puis-je fermer l'assistant de overlay.js? Je devrais appeler sa fonction cancel()
mais je ne peux pas le faire fonctionner!
C'est faux. Vous ne fermez pas la fenêtre de l'assistant, qui conserve les ressources associées en mémoire. La réponse de sdwilsh est meilleure. – Nickolay
@Nickolay: Bonjour. Merci pour votre critique. =) Je suis conscient que ma réponse pourrait être fausse. J'ai seulement écrit dans ma réponse après avoir vu la réponse de sdwilsh et les commentaires connexes. J'essayais juste de suggérer des choses différentes. Maintenant vous pourriez être plus qualifié que moi pour répondre à cette question, mais je pense que supprimer tous les nœuds enfants et fermer la fenêtre est similaire en ce qui concerne la mémoire. Si c'était différent, quelle est la différence? – wai
@Nickolay: Désolé pour le barrage des commentaires. Commentant à nouveau parce que cela ne va pas au-dessus. De l'apparence de son code, l'assistant est très probablement un objet singleton. Combien de mémoire peut-il fuir? Un effet secondaire intéressant de l'utilisation de cette méthode est que nous conserverons le noeud 'wizard', ce qui signifie que nous pourrons faire plus de choses plus tard sans avoir à ouvrir la fenêtre. Cela nous sauverait également des maux de tête tels que 'indéfini' ou 'nul' car il se fermait et nous empêchait de faire un appel window.open chaque fois que nous devions changer les choses. Encore une fois, merci pour votre temps! =) Très apprécié! – wai