easyui的window插件再次封装
说明:该插件弹出的弹出框在最顶层的页面中,而不是在当前页面所在的iframe中,它的可拖动范围是整个浏览器窗口;所以不能用JS的parent对象获取弹出它的父页面,这里用了一个笨方法,最多支持四级弹出框,即弹出框中再弹出弹出框的情况,笨方法也是方法,它很简单、很有效。
代码:
/** * easyui的window插件再次封装 * 2014年11月10日 */ SimpoWin = { showWin: function showWindow(title, url, width, height) { if (!top.SimpoWinId) top.SimpoWinId = 0; var divId = "simpoWin" + top.SimpoWinId; top.$("body").append('<div >); top.$('#' + divId).window({ modal: true, title: title, width: width, height: height, collapsible: false, minimizable: false, maximizable: false, content: function () { return '<iframe frameborder="0" src="' + url + '" style="width: ' + (width - 14).toString() + 'px; height: ' + (height - 39).toString() + 'px; margin: 0;">'; }, onClose: function () { top.$('#' + divId).window('destroy'); top.SimpoWinId--; } }).window('open'); top.SimpoWinId++; switch (top.SimpoWinId) { case 1: top.SimpoWinParent1 = window; break; case 2: top.SimpoWinParent2 = window; break; case 3: top.SimpoWinParent3 = window; break; default: top.SimpoWinParent = window; break; } }, closeWin: function () { var divId = "simpoWin" + (top.SimpoWinId - 1).toString(); top.$('#' + divId).window('close'); }, GetWinParent: function () { switch (top.SimpoWinId) { case 1: return top.SimpoWinParent1; case 2: return top.SimpoWinParent2; case 3: return top.SimpoWinParent3; default: return top.SimpoWinParent; } } }