我用js做了个弹出的div,现在想 如果不是点击在本div上,就关闭这个div 怎么写?
解决方案 »
- sencha touch的list动态加载数据?
- 无法取得div的scrollHeight和scrollTop,始终都为0
- 【【关于用js去掉换行符的疑问???】】
- 如何控制tab的样式
- 如何获得元素STYLE中一条rule中的属性?
- 大侠指点:当网页中某张图片载入失败后就让它显示指定的另一张图片
- 如果js中表单中字段的名称是由已知的变量构成,各位一般用什么方法得到字段?
- 关于excel的复制和样式问题
- 请问一个关于动态生成脚本中的回车的问题(在线等)
- 请告诉我怎样才能在一个网页里面,通过设定链接的target值使它在指定的iframe里面打开.
- 请教一个的select的高级运用,急----------
- 没搞清楚,在发一遍,大家帮俺解释下吧谢谢啊
2、没有遮罩层的话,直接在body上添加onclick事件关闭即可。
<head>
<script type='text/javascript'>
document.onclick = function(e) {
var el = e ? e.target : event.srcElement;
if (!!el['arg'] && el['arg'] == 'div') {
alert('点在div上了');
} else {
alert('没点在div上');
}
}
</script>
</head>
<body>
<div style='width:300px;height:300px;border:1px solid black;' arg='div'></div>
</body>
</html>
//阻止事件冒泡
}
<head>
<script type='text/javascript'>
window.onload = function() {
var info = document.getElementById("info");
document.onclick = function() {
alert("U has been clicked the document, info will be closed.");
info.style.display = "none";
}
info.onclick = function(e) {
alert("div has been clicked, nothing will be done!");
if (e && e.stopPropagation) {
e.stopPropagation();
} else {
window.event.cancelBubble = true;
}
}
} </script>
</head>
<body>
<div style="width:300px; height:300px; border:1px solid red;" id="info">This is div info</div>
</body>
</html>
<html>
<head>
<script type='text/javascript'>
document.onclick = function(e) {
var el = e ? e.target : event.srcElement;
if (!!el['arg'] && el['arg'] == 'div') {
alert('点在div上了');
} else if (!!el.attributes['arg'] && el.attributes['arg'].value == 'div'){
alert('点在div上了');
} else {
alert('没点在div上');
}
}
</script>
</head>
<body>
<div style='width:300px;height:300px;border:1px solid black;' arg='div'></div>
</body>
</html>刚刚改了一下,现在在IE和FF下都好使