初始化后更改简单模态选项

Changing SimpleModal options after init

本文关键字:模态 选项 简单 初始化      更新时间:2023-09-26

如果我第一次使用诸如{overlayClose:false}之类的选项调用SimpleModal,以后如何将该选项更改为{overlayClose:true}?

我希望在 AJAX

调用开始时打开 SimpleModal 以向用户提供一些反馈,同时防止模式被关闭,然后在 AJAX 完整回调中,将模式设置为可关闭。

是的

,但您必须更改该选项,然后重新绑定事件处理程序以查看选项更改。 我将其从文档站点入侵到"基本"演示中:

$('#basic-modal .basic').click(function (e) {
    var modal = $('#basic-modal-content').modal();
    $('#overclose').text(modal.o.overlayClose ? 'true' : 'false');
    window.setTimeout(function() {
        // These three lines will do it:
        modal.o.overlayClose = true;
        modal.unbindEvents();
        modal.bindEvents();
        $('#overclose').text('true');
    }, 5000);
    return false;
});

5 秒后,该选项将按预期启动。 我还在模态本身中破解了一个指标,一个跨度 id's 作为"overclose",以向您显示状态及其变化时间。

我必须使用以下方式引用模态对象:

$.modal.impl.o.escClose = false;
$.modal.impl.unbindEvents();
$.modal.impl.bindEvents();

通过jQuery选择器引用对象并没有为我做这件事(o是未定义的)。