bootstrap 关闭弹窗后改变父页面的class
时间: 2023-08-04 08:02:40 浏览: 43
可以通过在弹窗关闭时触发父页面的事件来实现修改父页面的class。具体实现步骤如下:
1. 在弹窗的关闭事件中添加触发父页面事件的代码:
```javascript
$('#myModal').on('hidden.bs.modal', function (e) {
// 触发父页面事件
window.parent.postMessage('modalClosed', '*');
});
```
2. 在父页面中监听该事件,并在事件触发时修改父页面的class:
```javascript
window.addEventListener("message", function(event) {
// 判断事件来源是否为弹窗关闭事件
if (event.data === "modalClosed") {
// 修改父页面的class
document.body.classList.add("modal-closed");
}
});
```
在上面的代码中,我们通过监听 `message` 事件来接收来自子页面的事件。当接收到 `modalClosed` 事件时,我们将为 `<body>` 元素添加 `modal-closed` class,从而实现修改父页面class的效果。
相关问题
bootstrap关闭弹窗事件
要关闭 Bootstrap 弹窗,可以使用以下代码:
```
$('#myModal').modal('hide');
```
其中,`#myModal` 是你要关闭的弹窗的 ID。
如果你需要在关闭弹窗之后执行一些操作,可以在 `hide` 方法中添加一个回调函数。例如:
```
$('#myModal').modal('hide').on('hidden.bs.modal', function () {
// 在弹窗关闭之后执行的操作
});
```
这里的 `hidden.bs.modal` 是 Bootstrap 弹窗关闭之后的事件。
bootstrap的弹窗剧中_bootstrap弹窗居中处理
要将Bootstrap弹窗居中处理,可以使用以下CSS代码:
```
.modal-dialog {
display: flex;
justify-content: center;
align-items: center;
}
```
这将在弹窗的父元素上使用flex布局,并将其子元素(即弹窗)垂直和水平居中。确保在使用此CSS之前,将弹窗的父元素设置为相对定位(position: relative)或固定定位(position: fixed)。
另外,如果您希望在页面加载时弹窗就处于居中状态,则可以在弹窗的父元素上添加以下CSS:
```
.modal {
display: flex !important;
align-items: center;
justify-content: center;
}
```
这将使弹窗在加载时就居中显示,而不是在用户单击打开按钮后才居中。
阅读全文