### 1.1 自定义 关闭窗口动作

**通过DOM关闭窗口**

**注意：本方法为通过寻找到公共组件弹框的DOM，模拟点击关闭，调用后默认关闭的是DOM最顶部弹框 **

```javascript
function closeDlalogByDOM(){
// 方式，通过获取弹出框右上角的关闭按钮，触发关闭按钮的点击事件，可关闭【弹出框】、【侧滑框】
  var dlgHeaders = document.querySelectorAll('.ui-dialog-portal .ui-dialog-layout-header');
  if (dlgHeaders.length > 0) {
    // 触发倒数第一个元素的点击事件
    dlgHeaders[dlgHeaders.length - 1].querySelector('.ui-dialog-closeIcon')?.click?.();
  }else{
    if(window.ebdFormSdk){ // EB表单
      ebdFormSdk.closePageBySlide()
    }else { //关闭所有页面打开的弹出框
      window.weappUtils?.eventEmitter?.emit('@weapp/ebdpage', 'dialog.close');
    }
  }
}
closeDlalogByDOM();//执行
```

### 1.2 自定义 关闭特定窗口动作

```javascript
// 关闭EB表单卡片的弹出框，侧滑框
window.ebdFormSdk.closePageBySlide();

// 关闭特定类型EB弹出框
window.weappUtils?.eventEmitter?.emit('@weapp/ebdpage', 'dialog.close', {
   pageType: 'LAYOUT', // 关闭EB表单【弹出框】
   closeAll: false,
});
// 关闭特定类型EB弹出框
window.weappUtils?.eventEmitter?.emit('@weapp/ebdpage', 'dialog.close', {
   pageType: 'SEARCH', // 关闭EB列表【弹出框】
   closeAll: false,
});

// 一次性关闭所有类型EB【弹出框】
window.weappUtils?.eventEmitter?.emit('@weapp/ebdpage', 'dialog.close');
```

## 1.3 单页关闭

```
window.close();
```

## 标准支持

> 251201基线支持了关闭事件

[图片附件未整合: ../../../../_assets/248177447609040896/001-af5ab031e6.png]
