我正在运行一个函数,如果它被加载,需要关闭一个Dojo对话框.如何检查dojo对话框是否正在运行?如果未定义,我是否使用纯JavaScript并按ID检查?
if (dijit.byId("blah") !== undefined) {
destroyRecursive dijit;
}
或者我使用对话框对象的属性,如:
isFocusable method
isLoaded property
解决方法:
你可能要检查Dialog provides two properties:isLoaded并打开.通过挖掘代码,您将找到以下描述:
> open:如果屏幕上当前显示Dialog,则为True.
> isLoaded:如果ContentPane中包含数据,则为True,在初始化期间指定(通过href或内联内容),或者通过attr(‘content’,…)/ attr(‘href’,…)设置为False if它没有任何内容,或者如果ContentPane仍在下载href的过程中.
所以,你可以:
var dialog = dijit.byId("blah");
if( dialog.open ) {
dialog.destroy();
}
原文地址:https://codeday.me/bug/20190522/1151769.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。