<a href="" class="a_attachment" >弹出居中模态窗口</a>
$(".a_attachment").click(function (e) {
var stuObj = { name: "xy", age: 22 };
var whObj = { width: 600, height: 350 };
var returnValue = openAttachmentWindow("test.html", stuObj, whObj, e);
if (returnValue) {
alert("传回来的name:" + returnValue.name);
}
});
function openAttachmentWindow(url, param, whparam, e){
// 传递至子窗口的参数
var paramObj = param || {};
// 模态窗口高度和宽度
var whparamObj = whparam || { width: 500, height: 500 };
// 相对于浏览器的居中位置
var bleft = ($(window).width() - whparamObj.width) / 2;
var btop = ($(window).height() - whparamObj.height) / 2;
// 根据鼠标点击位置算出绝对位置
var tleft = e.screenX - e.clientX;
var ttop = e.screenY - e.clientY;
// 最终模态窗口的位置
var left = bleft + tleft;
var top = btop + ttop;
// 参数
var p = "help:no;status:no;center:yes;";
p += 'dialogWidth:' + (whparamObj.width) + 'px;';
p += 'dialogHeight:' + (whparamObj.height) + 'px;';
p += 'dialogLeft:' + left + 'px;';
p += 'dialogTop:' + top + 'px;';
return window.showModalDialog(url, paramObj, p);
}
支持IE,FF, 在chorme中容器居中,却不是模态窗口