原理是利用HTML5中的window.open()和window.postMessage()
window.postMessage详情请查看:window.postMessage - Web API 接口参考 | MDN
首先是自己写的dialog.js
function Dialog() {
var d = this.dialog = Dialog.prototype;
d.Popup = null;
//初始化
d.init = function () {
//執行頁面消息監聽事件
if (!d.isModalDialog()) {
d.addEventListener();
}
};
/**
* 後台系統彈窗
* @param {String} url 窗口地址
* @param {Int} width 窗口寬度
* @param {Int} height 窗口高度
* @param {Boolean} bScroll 窗口是否允許滾動條
* @param {Function} evt[可選] 窗口返回數據回調函數
*/
d.show = function (url, width,