js/jq 点击按钮显示div,点击页面其他任何地方隐藏div

深碍√TFBOYSˉ_ 2022-04-18 06:32 410阅读 0赞
  1. JS效果

    <!DOCTYPE html>

    1. <html>
    2. <head>
    3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    4. <title>无标题文档</title>
    5. <style type="text/css">
    6. #pop {
    7. border: #000;
    8. background-color: #CCC;
    9. position: absolute;
    10. left: 50px;
    11. top: 50px;
    12. width: 200px;
    13. height: 500px;
    14. display: none;
    15. }
    16. #btn {
    17. color: #f00;
    18. }
    19. </style>
    20. </head>
    21. <body>
    22. <span id="btn">打开层</span>
    23. <div>aaaaaaaaaaaa</div>
    24. <div>aaaaaaaaaaaa</div>
    25. <div id="pop">
    26. 浮层,点击这个浮层以外的区域,都可以隐藏这个浮层
    27. <p><a href="javascript:;">最主要的是点这个div里面的链接,div照样不隐藏</a></p>
    28. </div>
    29. </body>
    30. </html>
    31. <script type="text/javascript">
    32. function $(id) { return document.getElementById(id); }
    33. window.onload = function () {
    34. document.onclick = function (e) {
    35. $("pop").style.display = "none";
    36. }
    37. $("btn").onclick = function (e) {
    38. $("pop").style.display = "block";
    39. e = e || event; stopFunc(e);
    40. }
    41. $("pop").onclick = function (e) {
    42. e = e || event; stopFunc(e);
    43. }
    44. }
    45. function stopFunc(e) {
    46. e.stopPropagation ? e.stopPropagation() : e.cancelBubble = true;
    47. }
    48. </script>
  2. JQ效果

    $(“#btn”).on(“click”, function(e){

    1. $("#menu").show();
    2. $(document).one("click", function(){
    3. $("#menu").hide();
    4. });
    5. e.stopPropagation();
    6. });
    7. $("#menu").on("click", function(e){
    8. e.stopPropagation();
    9. });

转自https://blog.csdn.net/YangBingX/article/details/78644486

发表评论

表情:
评论列表 (有 0 条评论,410人围观)

还没有评论,来说两句吧...

相关阅读