如果您使用Java编程,则可能会遇到以下情况:希望单击打开菜单,而当用户在菜单外部单击时关闭菜单。 我已经开发出一种非常简单的方法来做到这一点。 我将事件侦听器添加到文档的正文。 当有人单击它时,我们将查找事件的目标ID。 如果与框的div的ID匹配,则不执行任何操作。 如果不是,请关闭菜单。
再进一步说,在不使用click事件侦听器时,将其留在整个主体上效率很低。 在这种情况下,如果尚未打开菜单,则没有理由听菜单之外的点击。 在显示的div的回调中添加事件侦听器。 同样,再次隐藏div时,请删除事件侦听器。
显示Div单击黑框内的任何内容。 在外部单击,它会消失$('#showbox')。click(function(){$('#bigbox')。show(function(){document.body.addEventListener('click',boxCloser,false);}) ;}); 函数boxCloser(e){if(e.target.id!='bigbox'){document.body.removeEventListener('click',boxCloser,false); $('#bigbox')。hide(); }}
还要确保您在项目中包括jQuery,因为上面的某些功能正在使用该库。