我正在尝试制作一个弹出式div(当文本框值更改时),可以通过单击div之外的任何位置将其关闭(可见性:无)。与Google建议下拉菜单类似。
我怎么知道在div内部或外部发生了鼠标单击。
我需要使用javascript和jsp来实现。
请帮忙。
jQuery的解决方案是
$("body > div").click(function() { if ($(this).attr("id") == "div-id") { // inside the DIV } else { // not inside the DIV } });
要么
$("html").click(function (e) { if (e.target == document.getElementById("div-id")) alert("Inside DIV"); else alert("Outside DIV!"); });
或Javascript代码段如下所示:
<script type="text/javascript"> document.onclick=check; function check(e){ var target = (e && e.target) || (event && event.srcElement); var obj = document.getElementById('div-id'); if(target!=obj){obj.style.display='none'} } </script>