关闭弹出DIV层的代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关闭弹出DIV层的代码相关的知识,希望对你有一定的参考价值。

弹出DIV没有问题了,现在我想如果点了DIV层以外的区域它就关闭,如何弄呢?

参考技术A 你的div有没有和其他控件绑定在一起呢?比如当一个文本框得到焦点的时候div才会显示,如果那样的话 在和div绑定的控件的失去焦点事件里写 隐藏div的代码
引用楼上
function close()

var div = document.getElementById("div");
div.style.display ="none";


然后在那个div中加 onblur="close()"; 就可以了。
把onClick换成onblur就可以了
参考技术B 要是有一个遮罩层,点击遮罩层关闭div并且移除遮罩层你会吧。
如果没有遮罩层,就在div上加一个关闭按钮好了,不然处理起来麻烦本回答被提问者和网友采纳
参考技术C var W = screen.width;//取得屏幕分辨率宽度
var H = screen.height;//取得屏幕分辨率高度

//判断浏览器是否为IE
function isIE()
return (document.all && window.ActiveXObject && !window.opera) ? true : false;

//取得页面的高宽
function getBodySize()
var bodySize = [];
with(document.documentElement)
bodySize[0] = (scrollWidth>clientWidth)?scrollWidth:clientWidth;//如果滚动条的宽度大于页面的宽度,取得滚动条的宽度,否则取页面宽度
bodySize[1] = (scrollHeight>clientHeight)?scrollHeight:clientHeight;//如果滚动条的高度大于页面的高度,取得滚动条的高度,否则取高度

return bodySize;

//创建遮盖层
function popCoverDiv()
if (document.getElementById("cover_div"))
//如果存在遮盖层,则让其显示
document.getElementById("cover_div").style.display = 'block';
else
//否则创建遮盖层
var coverDiv = document.createElement('div');
document.body.appendChild(coverDiv);
coverDiv.id = 'cover_div';
coverDiv.onclick=close;
with(coverDiv.style)
position = 'absolute';
background = '#CCCCCC';
left = '0px';
top = '0px';
var bodySize = getBodySize();
width = bodySize[0] + 'px'
height = bodySize[1] + 'px';
zIndex = 0;
if (isIE())
filter = "Alpha(Opacity=60)";//IE逆境
else
opacity = 0.6;





//让登陆层显示为块
function showLogin()

var login=document.getElementById("div1");
login.style.border="3px solid #0099ff";
login.style.display = "block";


//设置DIV层的样式
function change()
var login = document.getElementById("div1");
login.style.position = "absolute";
login.style.border = "1px solid #CCCCCC";
login.style.background ="#F6F6F6";
var i=0;
var bodySize = getBodySize();

popChange(i);

//让DIV层大小循环增大
function popChange(i)
var login = document.getElementById("div1");
var bodySize = getBodySize();
login.style.left = (bodySize[0]-i*i*9)/2+"px";
login.style.top = (bodySize[1]/2-100-i*i*2)+"px";
login.style.width = i*i*8 + "px";
login.style.height = i*i*3.3+ "px";
if(i<=10)
i++;
setTimeout("popChange("+i+")",10);//设置超时40毫秒


//打开DIV层
function open()

change();
showLogin();
popCoverDiv()
void(0);//不进行任何操作,如:<a href="#">aaa</a>


//关闭DIV层
function close()
document.getElementById('div1').style.display = 'none';
document.getElementById("cover_div").style.display = 'none';
void(0);
参考技术D 用js实现吧
函数如下:
function close()

var div = document.getElementById("div");
div.style.display ="none";


然后在那个div中加 onclick="close()"; 就可以了。
第5个回答  2010-12-13 <a href="#" onclick="div.style.display='none'">关闭</a>

以上是关于关闭弹出DIV层的代码的主要内容,如果未能解决你的问题,请参考以下文章

jquery 点击弹出层的确定按钮后,弹出层关闭,部分刷新当前页面的指定的div内容

layui使用弹出层 关闭后弹层的内容又显示出来

求一段js代码打开页面div5秒弹出,点击关闭按钮后再次定时弹出

layer弹出层的关闭及父页面的刷新问题

求一段js代码打开页面div5秒弹出,点击关闭按钮后再次定时弹出

js弹出div并显示遮罩层