我认为问题在于div不会触发该
onfocusout事件。您需要捕获主体上的单击事件,然后确定目标是否为菜单div。如果不是,则用户单击了其他位置,并且需要隐藏div。
<head> <script> $(document).ready(function(){ $("body").click(function(e) { if(e.target.id !== 'menu'){ $("#menu").hide(); } }); }); </script> <style>#menu { display: none; }</style></head><body> <div id="menu_button" onclick="$('#menu').show();">Menu....</div> <div id="menu"> <!-- Menu options here --> </div> <p>Other stuff</p></body>


