如何在没有JQuery的情况下通过鼠标单击超出表单区域来隐藏表单

时间:2014-03-07 06:12:26

标签: javascript html forms

我有以下形式:

<form method="get">
<!-- This is form's content -->
</form>

我想通过鼠标单击表单区域之外隐藏表单。我正在尝试设置window.onclick事件处理程序,但此处理程序覆盖了我页面上的其他onlcick处理程序。我需要这样做没有JQUERY 。感谢。

1 个答案:

答案 0 :(得分:0)

为您的表单添加ID,并在addEventListener中添加e.target.id

<form method="get" id="myform">
<!-- This is form's content -->
Dummy content
</form>
<script>
    window.onclick = function(e) {
        alert('other handlers');
    }
    window.addEventListener('click', function(e) {
        if (e.target.id != "myform") {
            document.getElementById('myform').style.display = 'none';
        }
    });
</script>

工作演示:http://jsfiddle.net/6bewY/