Scripty2:如何关闭对话框

发布于 2024-08-19 06:19:53 字数 369 浏览 6 评论 0原文

我正在寻找一种关闭 scripty2 对话框的方法,如下所示: http://mir.aculo.us/stuff/scripty2- ui/test/function/controls_dialog.html

从对话框外部(即使用 firebug 命令行),但我的 javascript 魔力有点有限,在 DOM 周围 30 分钟后我找不到方法。有什么提示吗?

注意:scripty2 是 script.aculo.us 的重写,它使用了一些 Jquery UI。

I am looking for a way to close a scripty2 dialog like this :
http://mir.aculo.us/stuff/scripty2-ui/test/functional/controls_dialog.html

From outside of the dialog (i.e. with firebug command line) but my javascript mojo is a bit limited and after 30 min of going around the DOM I cannot find a way. Any hints ?

NB : scripty2 is a rewrite of script.aculo.us which uses bits of Jquery UI.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

北方的巷 2024-08-26 06:19:54

要关闭没有 ids 代码的页面上的所有对话框(类 div.ui-dialog 的元素),将是这样的(未经测试):

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

To close all the dialogs (elements with class div.ui-dialog) on the page with no ids code would be something like this (untested):

$('div.ui-dialog').each(function() {this.close();});
听风吹 2024-08-26 06:19:53

Scripty2 UI 位实际上基于 Prototype 类,而不是 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(); 

Scripty2 UI bits are really based on Prototype classes, not extensions to DOM elements, so you can't use $$() to fetch an existing dialog and close it like you might think. It must be stored in a javascript variable.

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. 
  } 
}); 

Try pasting these into Firebug:

var dialog = new S2.UI.Dialog({content: "Hello World"}); 
dialog.open(); 
dialog.close(); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文