如何实现在点击窗口右上角的小叉号关闭窗口前弹出另一个窗口呢

eileenrenyan 2010-09-15 10:50:48
要求实现关闭的时候弹出一个评价服务的对话框,提交后两个窗口都关闭
页面有两个关闭按钮,一个是右上角的叉号,一个是页面内退出按钮

页面内的按钮用如下代码就实现了,
内添加按钮打开窗口用下面的代码就可以了
function openwin(url)
{
var diag = new Dialog();
diag.Width = 400;
diag.Height = 220;
diag.Title = "服务评价";
diag.URL = url;
diag.show();
}
function aaa()
{
openwin("remark.jsp","添加备注");
form1.submit();
}

对于右上角的叉号,在onUnload添加函数,就实现不了,直接关闭了
但是用window.showModalDialog可以,但是弹出的窗口是有边框那种,不是像层那种
怎么回事,怎么实现跟页面按钮相同的效果呢
...全文
1952 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wz_307 2010-09-15
  • 打赏
  • 举报
回复
onbeforeunload, ls刚才打错
wz_307 2010-09-15
  • 打赏
  • 举报
回复
这个Dialog()是lz自定义的类吗

我接触到的再unload时弹出alert, confirm方法会阻断浏览器进程, 但是如果是自定义层的话浏览器就不会管你, 而自行关闭了.

也可以使用onunload方法, 不同在浏览器机制上同理
hoojo 2010-09-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 eileenrenyan 的回复:]
要求实现关闭的时候弹出一个评价服务的对话框,提交后两个窗口都关闭
页面有两个关闭按钮,一个是右上角的叉号,一个是页面内退出按钮

页面内的按钮用如下代码就实现了,
内添加按钮打开窗口用下面的代码就可以了
function openwin(url)
{
var diag = new Dialog();
diag.Width = 400;
diag.Height = 220;
di……
[/Quote]

用div模拟窗口即可
  • 打赏
  • 举报
回复
模式对话框才能在打开后,等到它关闭才继续执行,也就是关闭窗体.
其它的...
你可以设一个全局JS变量,初值为false.
unload时,判断该变量,为false就显示层并return false.为true就return true.
关闭弹出层时设变量为true,然后window.close().
没试验.你试试吧.

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧