window.open锁定窗口

qq_33304681 2017-02-20 01:25:40
function slt(){
window.open(url,"","width=400,height=400");
}

页面上有许多按钮和菜单,当在页面上点击某一个按钮时,调用slt(),此时弹出一个400*400的窗口,此时怎么锁定页面,防止用户进行其他操作,除非等这个400*400的窗口关闭,才可进行其他操作。PS:以前用的是showModalDialog这个方法就可实现,但只局限于IE,但现在要求兼容其他浏览器,所以不能使用该方法了。
...全文
432 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
自渡96 2017-12-20
  • 打赏
  • 举报
回复
借你的帖子学习了
文杰ol 2017-12-19
  • 打赏
  • 举报
回复
引用 7 楼 qq_33304681 的回复:
[quote=引用 6 楼 selection_wang 的回复:] 用jBox不能解决么?
jBox无法直接传一个url吧,我弹出框的内容是url所指向的一个jsp页面[/quote] jBox是可以传一个链接的,之前在忙其他事情,没来得及回复 $.jBox('iframe:url?systemId='+value,{title: '***',width: 800, height:540, top:15, buttons: {}});
yibey 2017-02-23
  • 打赏
  • 举报
回复
这种自己模拟一个页面内的模式窗口是最合适的, 打开新窗口的模式窗口有兼容性问题
qq_33304681 2017-02-23
  • 打赏
  • 举报
回复
引用 6 楼 selection_wang 的回复:
用jBox不能解决么?
jBox无法直接传一个url吧,我弹出框的内容是url所指向的一个jsp页面
南瓜三号 2017-02-23
  • 打赏
  • 举报
回复
楼主有没有jBox的写法,我想学学
laidezhong 2017-02-23
  • 打赏
  • 举报
回复
open 之后,在A页面做一个蒙层,B页面完成后,删掉这个蒙层
qq_33304681 2017-02-23
  • 打赏
  • 举报
回复
引用 5 楼 jslang 的回复:
[quote=引用 4 楼 qq_33304681 的回复:] [quote=引用 3 楼 jslang 的回复:] 其实现在都不用弹出窗口,而是用iframe+div模拟,并用一个与页面100%大小的半透明div覆盖在页面上,防止用户操作页面的其它部分。
因为项目中需要大量用到,所以我就想写个公用的方法,直接传个url即可弹出页面。如果换成iframe+div,这样就没法通用了,而且又得写很多的div.[/quote] 你可以在公用的方法中动态创建iframe和div啊。不用在每个页面是都写 [/quote] 这种虽然可以,但这样我项目要改动的代码太多了,不过还是谢谢你了!
qq_33304681 2017-02-23
  • 打赏
  • 举报
回复
引用 8 楼 yibey 的回复:
这种自己模拟一个页面内的模式窗口是最合适的, 打开新窗口的模式窗口有兼容性问题
这种可以是可以,但写起来太麻烦,对项目代码改动太大,且共用性不强
qq_33304681 2017-02-23
  • 打赏
  • 举报
回复
引用 7 楼 qq_33304681 的回复:
[quote=引用 6 楼 selection_wang 的回复:] 用jBox不能解决么?
jBox无法直接传一个url吧,我弹出框的内容是url所指向的一个jsp页面[/quote] 对jBox源码做了修改,已达到我想要的效果,谢谢了!
文杰ol 2017-02-22
  • 打赏
  • 举报
回复
用jBox不能解决么?
qq_33304681 2017-02-21
  • 打赏
  • 举报
回复
引用 3 楼 jslang 的回复:
其实现在都不用弹出窗口,而是用iframe+div模拟,并用一个与页面100%大小的半透明div覆盖在页面上,防止用户操作页面的其它部分。
因为项目中需要大量用到,所以我就想写个公用的方法,直接传个url即可弹出页面。如果换成iframe+div,这样就没法通用了,而且又得写很多的div.
天际的海浪 2017-02-21
  • 打赏
  • 举报
回复
引用 4 楼 qq_33304681 的回复:
[quote=引用 3 楼 jslang 的回复:] 其实现在都不用弹出窗口,而是用iframe+div模拟,并用一个与页面100%大小的半透明div覆盖在页面上,防止用户操作页面的其它部分。
因为项目中需要大量用到,所以我就想写个公用的方法,直接传个url即可弹出页面。如果换成iframe+div,这样就没法通用了,而且又得写很多的div.[/quote] 你可以在公用的方法中动态创建iframe和div啊。不用在每个页面是都写
天际的海浪 2017-02-20
  • 打赏
  • 举报
回复
其实现在都不用弹出窗口,而是用iframe+div模拟,并用一个与页面100%大小的半透明div覆盖在页面上,防止用户操作页面的其它部分。
qq_33304681 2017-02-20
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
在open打开的页面中写 window.onblur = function () { window.focus(); }
这种只在IE下有用吧,且每次点击到外面时页面一闪一闪的,体验也很不好
天际的海浪 2017-02-20
  • 打赏
  • 举报
回复
在open打开的页面中写 window.onblur = function () { window.focus(); }

87,907

社区成员

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

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