父页面:
复制代码 代码如下:
--%>
printcertdia.jsp 便是要显示的最上层jsp. 如果用jsp:include 页面便会报错,至于为什么还没研究,可能和加载顺序有关。
(在给标签变量取名字时候,如果变量和id名一样时候,js也会报错,要避免)
在父页面添加触发显示遮罩层js:
在这里创建一个div和body一样大小,这样就可以把整个页面全部盖住了。
style.zindex 来控制覆盖的先后顺序(层级)
style.filter ,style.opacity 控制显示透明°。
复制代码 代码如下:
//mask遮罩层
var newmask = document.createelement(div);
newmask.id = m;
newmask.style.position = absolute;
newmask.style.zindex = 1;
_scrollwidth = math.max(document.body.scrollwidth, document.documentelement.scrollwidth);
_scrollheight = math.max(document.body.scrollheight, document.documentelement.scrollheight);
newmask.style.width = _scrollwidth + px;
newmask.style.height = _scrollheight + px;
newmask.style.top = 0px;
newmask.style.left = 0px;
newmask.style.background = #666;
newmask.style.filter = alpha(opacity=40);
newmask.style.opacity = 0.40;
document.body.appendchild(newmask);
js控制父页面已经定义好的div显示:
复制代码 代码如下:
newdiv=document.getelementbyid(newdiv1);
// var newdiv = document.createelement(div);
// newdiv.id = _id;
newdiv.style.position = absolute;
newdiv.style.zindex = 9999;
newdivwidth = 700;
newdivheight = 600;
newdiv.style.width = newdivwidth + px;
newdiv.style.height = newdivheight + px;
newdiv.style.top = (document.body.scrolltop + document.body.clientheight / 2 - newdivheight / 2) + px;
newdiv.style.left = (document.body.scrollleft + document.body.clientwidth / 2 - newdivwidth / 2) + px;
newdiv.style.background = #f7f7ef;
newdiv.style.border = 1px solid #860001;
newdiv.style.padding = 5px;
newdiv.style.display='';
js控制父页面div滚动居中:
attachevent ,addeventlistener 对scroll 添加处理事件 newdivcenter
复制代码 代码如下:
function newdivcenter() {
newdiv.style.top = (document.body.scrolltop + document.body.clientheight / 2 - newdivheight / 2) + px;
newdiv.style.left = (document.body.scrollleft + document.body.clientwidth / 2 - newdivwidth / 2) + px;
}
if (document.all) {
window.attachevent(onscroll, newdivcenter);
}
else {
window.addeventlistener('scroll', newdivcenter, false);
}
动态给父页面div添加关闭图层和遮罩层(需要修改):
复制代码 代码如下:
var newa = document.createelement(a);
newa.href = #;
newa.innerhtml = 关闭;
newa.onclick = function() {
if (document.all) {
window.detachevent(onscroll, newdivcenter);
}
else {
window.removeeventlistener('scroll', newdivcenter, false);
}
document.body.removechild(docele(newdiv1));
document.body.removechild(docele(m));
document.getelementbyid(certimg).style.display='';
return false;
}
newdiv.appendchild(newa);
