基于jquery的蒙层弹出框

作者: zoomsk | 来源:发表于2016-12-20 15:11 被阅读283次

分享下自己写的蒙层弹出框,作为菜鸟的我希望各位前辈指出不对的地方。
测试地址 demo: <a href="https://zoomsk.github.io/%E7%AE%80%E4%B9%A6demo/custom_layer.html">点击进入 </a>

效果图

蒙层.png

1.html结构代码

  <body>
    <button id="btn_alert">弹出测试</button>
    <div id="cm_layer">   
        <div class="custom-layer">     
        <h3>蒙层测试</h3>     
        <p>Lorem ipsum dolor sit amet, consecteturllit anim id est laborum.</p>   
       <p>Lorem ipsum dolor sit amet, consecteturllit anim id est laborum.</p>    
   </div>
  </div> 
<script src="js/jquery.mini.js"></script>
  </body>

2.css样式

  .custom-layer{    
     width: 80%;    
     padding: 10px;   
     -webkit-border-radius: 10px;  
     -moz-border-radius: 10px;    
     border-radius: 10px;   
     font: 16px "Microsoft YaHei UI";    
     background: #fff;
}

3.js

function alertMCLayer(layerStr, activeStr) {   
   let oLayer = $(layerStr);   
  //触发弹出蒙层    
  $(activeStr).on('click',function(){        
        oLayer.css({           
               'display': 'flex',           
               'display': '-webkit-flex',       
                }) })     
         let layer_height = window.innerHeight + 'px';   
         oLayer.css({        
        'position': 'fixed',       
         'left': '0',       
         'top': '0',       
         'width': '100%',       
         'height': layer_height,       
         'background': 'rgba(0,0,0,0.7)',       
         'display': 'none',       
          'justify-content': 'center',      
          'align-items': 'center',  
    });   
   oLayer.find('div').on('click', function (event) {       
           event.stopPropagation();//取消事件冒泡,点击外层时才会弹出    })                        
     oLayer.on('click', function () {      
    $(this).css('display', 'none'); //点击外层隐藏蒙层    })}

调用方法

  $(function(){    
    alertMCLayer('#cm_layer','#btn_alert');
  })

注意: 需要引入jquery框架 或者吧jquery链接改为

<script src="//cdn.bootcss.com/jquery/2.0.0/jquery.min.js"></script>    

测试地址: <a href="https://zoomsk.github.io/%E7%AE%80%E4%B9%A6demo/custom_layer.html">点击进入 </a>
分享下自己写的蒙层弹出框,作为菜鸟的我希望各位前辈指出不对的地方。

相关文章

  • 基于jquery的蒙层弹出框

    分享下自己写的蒙层弹出框,作为菜鸟的我希望各位前辈指出不对的地方。 测试地址 demo: 点击进入 效果图...

  • jQuery

    1 利用jQuery实现浮层弹出框作业 2 利用jquery切换元素样式的颜色($('#d1').toggleCl...

  • 灯箱效果插件Magnific Popup详解

    Magnific Popup 是一个非常优秀的弹出对话框或者灯箱效果插件。它基于jQuery(zepto)开发,使...

  • 【前端案例】15 - 案例:模态框拖拽

    弹出框,我们也称为模态框。 1.点击弹出层,会弹出模态框, 并且显示灰色半透明的遮挡层; 2.点击关闭按钮,可以关...

  • js内容汇总

    一、ajax请求(jquery) 二、Jquery 弹出对话框插件xcConfirm.js https://blo...

  • 弹层-滚动条

    要求:弹出框出现,弹出框的内容滚动,但是dom层不随着弹出框的滚动而滚动,在弹层上滚动时整个页面也不滚动

  • colorbox 弹出层 jquery

    colorbox 弹出层 jquery $(".inline").colorbox({inline:true, w...

  • 遮罩层实现

    代码如下 实现效果:点击按钮,显示遮罩层,弹出弹框点击遮罩层,隐藏遮罩层,隐藏弹框

  • 40款经典前端特效插件---分享

    1.flavr—超级漂亮的jQuery扁平弹出对话框 2.轻量级触摸响应滑块插件JQuery lightSlid...

  • vue项目 蒙层上有部分滚动,禁止蒙层下的滚动

    思考过程### 开始的思路只解决禁止蒙层下滚动的问题 当点击弹出蒙层时加入: 当点击隐藏蒙层时: 后来发现: 蒙层...

网友评论

  • ghwaphon:建议不要将大量的css代码写在js中,最好通过动态添加class的形式来完成样式工作,实现表现层和行为层的解耦。
    zoomsk: @高华我以为这样封装会好点呢,看来有点多余

本文标题: 基于jquery的蒙层弹出框

本文链接:https://www.haomeiwen.com/subject/rmgauttx.html