javascript的open函数弹出来一个指定大小的页面以后怎么让鼠标不能点吉父页面啊?

 我来答
dommy529
2012-05-17 · TA获得超过1496个赞
知道小有建树答主
回答量:812
采纳率:0%
帮助的人:908万
展开全部
你的要求是弹出一个模态窗口,open函数弹出的是普通窗口,必须使用showModalDialog

但是现在一般的浏览器会限制弹出窗口,可以考虑使用浮动层和遮罩层模拟模态对话框的效果。
先生成一个能够覆盖整个页面的层,盖在页面之上,这样页面里面的元素就不能被鼠标点击了,然后再在这个覆盖层之上再生成一个层,用来显示新窗口内容。一个简单例子:

<script>
function openDialog(str){
var _body = document.getElementsByTagName('body')[0];
var _mask = document.createElement('DIV');
var _win = document.createElement('DIV');
with(_mask.style){
position = 'absolute';
left = '0px';
top = '0px';
width = '100%';
height = _body.offsetHeight+'px';
background = '#000000';
opacity = '0.5';
}
_body.appendChild(_mask);
with(_win.style){
position = 'absolute';
width = '400px';
height = '300px';
left = ((_body.offsetWidth-400)/2)+'px';
top = '100px';
}
_win.innerHTML = str;
_body.appendChild(_win);
}
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
召秋梵悌p1
2012-05-12 · TA获得超过2282个赞
知道小有建树答主
回答量:616
采纳率:80%
帮助的人:690万
展开全部
open函数做不到,可以用window.showModalDialog()函数,语法很类似,但参数不同。
例子:
<script>
window.showModalDialog("modal.htm","","dialogWidth=200px;dialogHeight=100px");
</script>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wskfhvhc
2012-05-16 · TA获得超过692个赞
知道小有建树答主
回答量:307
采纳率:66%
帮助的人:304万
展开全部
思路:
open函数肯定不行的,不同的浏览器对弹出页面支持力度不同
1.做一个与窗口同等大小的<div> 设置透明度,z-index可以设的高一些,display:none
2.再做一个<div>,模拟弹出的页面,z-index比第一步做的div高1。display:none
3.执行某项操作后,将上面两个div都显示出来,用第一个div盖住下面的页面,让鼠标不能点击
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式