window.modalr
,可以和 jQuery 协同使用。opts = {
// 允许点击空白处关闭弹出层
closeOnMark: true,
// 弹出层挂载点,默认是 document.body.
target: document.body,
// 弹出层关闭时回调钩子
onCloseCallback: function() {},
// 弹出前钩子
before: function(){}
}
htmlString = document.getElementById('some-id').innerHtml
// 弹出层,内容为普通 HTML String,ID 为 modalr 的 handler ,动态生成。
// 注意因为弹出层显示的内容是 Html String,如果业务上需要获取内容里某个值(例如表单的值),
// 需要使用 document.getElementByClass 方式。弹出层是复制了 HTML 中内容,非引用方式。
// 如果使用 jQuery,通过 `${id}-content-wrapper` 可以构造出弹出层的内容的 wrapper id。
// 通过 $('wrapper-id > .some-class'),可以快速定位出需要的 HTML Element。
const id1 = modalr.show(htmlString, opts)
// 弹出“加载中”,需要手动关闭
const id2 = modalr.loading();
// 弹出“加载中”,1000ms 后自动关闭
const id3 = modalr.loading(1000);
// 关闭指定层
modalr.close(id1);
// 关闭所有
modalr.closeAll();
// 关闭最后一个弹出层
modalr.closeLatest();
以下在 node.js
v16 版本下测试通过。
$ npm install
$ npm run build # 打包生产环境版本
$ npm run dev # 开发环境
见 demo.html。
2021.06.19
2021.06.18
2021.06.10
el.cloneNode(true)
复制一份用于弹窗window.modalr
2019.10.26
2019.8.18
2019.6.24
2019.4.30
2018.9.6
2018.9.15
2018.10.16
2018.11.2