2010-01-21 5 views
0

Je cherche un moyen de fermer une boîte de dialogue de scripty2 comme ceci: http://mir.aculo.us/stuff/scripty2-ui/test/functional/controls_dialog.htmlScripty2: comment fermer dialogue

de l'extérieur de la boîte de dialogue (par exemple avec la ligne de commande Firebug) mais mon javascript mojo est un peu limité et Après 30 minutes de faire le tour du DOM, je ne trouve pas de chemin. Des indices? NB: scripty2 est une réécriture de script.aculo.us qui utilise des bits de Jquery UI.

+0

Cela devrait être taggés avec 'scripty2' – barry

Répondre

0

bits de l'interface utilisateur Scripty2 sont vraiment basés sur les classes de prototype, pas des extensions aux éléments DOM, de sorte que vous ne pouvez pas utiliser $$() pour aller chercher un dialogue existant et le fermer comme vous pourriez penser. Il doit être stocké dans une variable javascript.

var dialog = new S2.UI.Dialog({ // The class must be saved in a 
variable 
    content: "Consulting the server. Please wait." 
}); 

dialog.open(); // We open 
new Ajax.Request('/answers', { 
    onComplete: function(){ 
    alert("Done!"); 
    dialog.close(); // And close. 
    } 
}); 

Essayez de coller ceux-ci dans Firebug:

var dialog = new S2.UI.Dialog({content: "Hello World"}); 
dialog.open(); 
dialog.close(); 
0

Pour fermer toutes les boîtes de dialogue (avec des éléments de classe div.ui-dialogue) sur la page sans code ids serait quelque chose comme ça (non testé):

$$('div.ui-dialog').each(function() {this.close();}); 
+0

Merci pour la réponse. Cela n'a pas fonctionné. – nicolasochem

Questions connexes