zoukankan      html  css  js  c++  java
  • jQuery点击弹出遮罩层(弹出模态框),点击模态框消失

    <!DOCTYPE html>
    <html>
    <head>
        <title>jQuery弹出层 模态框</title>
        <script src="./jquery.min.js" type="text/javascript"></script>
        <style>
            .btn{
                height:100px;
            }
            .black_over{
                display: none;
                position: fixed;
                 100%;
                height: 100%;
                background-color: black;
                z-index:1001;
                top: 0;  /*不可或缺,至关重要*/
                left: 0;
                right: 0;
                left: 0;
                margin: auto;
                background-color: rgba(0,0,0,0.8);
            }
            .white_content {
                display: none;
                position: fixed;
                z-index:1002;
                overflow: auto;
            }
        </style>
        <script type="text/javascript">
            $(function () {
                //弹出隐藏层
                function ShowDiv(show_div,bg_div){
                    document.getElementById(show_div).style.display='block';
                    document.getElementById(bg_div).style.display='block' ;
    
                    var _windowHeight = $(window).height(),//获取当前窗口高度
                            _windowWidth = $(window).width(),//获取当前窗口宽度
                            _popupHeight = $("#"+show_div).height(),//获取弹出层高度
                            _popupWeight = $("#"+show_div).width();//获取弹出层宽度
                    _posiTop = (_windowHeight - _popupHeight)/2;
                    _posiLeft = (_windowWidth - _popupWeight)/2;
                    $("#"+show_div).css({"left": _posiLeft + "px","top":_posiTop + "px","display":"block"});//设置position
                };
                //关闭弹出层
                function CloseDiv(show_div,bg_div)
                {
                    document.getElementById(show_div).style.display='none';
                    document.getElementById(bg_div).style.display='none';
                };
    
                $(".btn").click(function () {
                    var src = $(this).attr("src");
                    $("#showcont").attr("src",src);
                    ShowDiv('MyDiv','fade')
                });
                $("#fade").click(function () {
                    CloseDiv('MyDiv','fade')
                });
            });
    
        </script>
    </head>
    <body>
    <!--<input id="Button1" type="button" value="点击弹出层" onclick="ShowDiv('MyDiv','fade')" />-->
    <!--图片请换成自己的,点击图片弹出-->
    <img src="tu.png" alt="sd" class="btn" >
    <img src="pic.jpg" alt="sd" class="btn" >
    <!--弹出层时背景层DIV-->
    <div id="fade" class="black_over">
    </div>
    <!--弹出层的内容-->
    
    <div id="MyDiv" class="white_content">
    
    <img src="tu.png" alt="" id="showcont">
    </div>
    </body>
    
    </html>
    

      2补充 

    弹出遮罩层后禁止页面滚动(可不写)

    方法一:

    设置body的CSS样式为
    overflow:hidden

    方法二:

    $('.shade').bind( "touchmove", function (e) {  
       e.preventDefault();  
    });  

    方法三:

    $("body,.main").height($(window).height()).css({  
      "overflow-y": "hidden"  
    }); 
  • 相关阅读:
    不移除通知的话,出现的bug
    嵌入式-第一季-第14课
    嵌入式-第一季-第13课
    嵌入式-第一季-第12课
    嵌入式-第一季-第11课
    嵌入式-第一季-第10课
    嵌入式-第一季-第9课
    嵌入式-第一季-第8课
    嵌入式-第一季-第7课
    嵌入式-第一季-第6课
  • 原文地址:https://www.cnblogs.com/wu-hou/p/6323582.html
Copyright © 2011-2022 走看看