如题: 页面结构,
<div class="d_1">
<div class="d_2>内容一</div>
<div class="d_2">
<div class="d_3">内容</div>
</div>
</div>
类似如上例中的div元素,如何在点击最外层div以外的地方时让整个div组件失去焦点后隐藏请高手赐教 谢谢
<div class="d_1">
<div class="d_2>内容一</div>
<div class="d_2">
<div class="d_3">内容</div>
</div>
</div>
类似如上例中的div元素,如何在点击最外层div以外的地方时让整个div组件失去焦点后隐藏请高手赐教 谢谢
if($(e.target).closest("div.d_1").is("div.d_1")){
//点击的div.d_1或div.d_1的内部元素
}else{
//点击的div.d_1以外的地方
$("div.d_1").css("display","none");
}
});
<script language="javascript" type="text/javascript" src="operation.js"></script> //加入JS文件,路径一定要正确
...
<div id="d_1" class="d_1" onmouseout="operation()"> //在鼠标离开时调用js的operation方法,别忘了加上id
<div class="d_2>内容一</div>
<div class="d_2">
<div class="d_3">内容</div>
</div>
</div>
operation.jsfunction operation(){
var operation = document.getElementById('d_1');
operation.style.display = "none";
}这个冒似只能当鼠标移到其它地方时就隐藏。
<div class="d_2">内容一</div>
<div class="d_2">
<div class="d_3">内容</div>
</div>
</div>
<script type="text/javascript">
document.getElementById('content').onblur = function(){
document.getElementById("content").style.display = "none";
return false;
}
</script>js 要放到div后面,如果放到前面没有效果
那个代码之前将jquery.js载入进来就可以了.<script language="javascript" type="text/javascript" src="jquery.js"></script>
<script language="javascript">
$(document).bind("click", function (e) {
if($(e.target).closest("div.d_1").is("div.d_1")){
//点击的div.d_1或div.d_1的内部元素
}else{
//点击的div.d_1以外的地方
$("div.d_1").css("display","none");
}
});
</script>
自己写JS会复杂得多.