javascript – 如何检查是否加载了Dojo对话框?

我正在运行一个函数,如果它被加载,需要关闭一个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();
}
上一篇:arcgis api 4.x for js 集成 Echarts4 实现模拟迁徙图效果(附源码下载)


下一篇:arcgis api for javascript 距离与面积量算