2010-01-21 4 views
0

Я ищу способ, чтобы закрыть диалоговое окно scripty2 так: http://mir.aculo.us/stuff/scripty2-ui/test/functional/controls_dialog.htmlScripty2: как закрыть диалоговое

С внешней стороны диалога (т.е. с помощью команды Firebug линии), но мой яваскрипта харизмы немного ограничен и через 30 минут, пройдя DOM, я не могу найти способ. Любые намеки?

NB: scripty2 является перепиской script.aculo.us, которая использует биты JQuery UI.

+0

Это должно быть помечены 'scripty2' – barry

ответ

0

бит Scripty2 UI действительно основаны на классах прототипа, а не расширения к элементам DOM, так что вы не можете использовать $$() для извлечения существующего диалога и закрыть его, как вы могли бы подумать. Он должен храниться в переменной 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. 
    } 
}); 

Попробуйте вставить их в Firebug:

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

Чтобы закрыть все диалоговые окна (элементы с классом div.ui-диалог) на странице, без кода IdS будет что-то вроде этого (непроверенные):

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

Спасибо за ответ. Это не работает. – nicolasochem

Смежные вопросы