页面遮罩层,并且阻止页面body滚动。bootstrap模态框原理

最近在做手机端效果的时候,页面需要在下拉菜单滚动的时候,阻止页面的滚动。于是就研究了一下bootstrap模态框的实现原理。

实现思路:

1、需要有一个层将body遮住,放在body上方。

2、修改body的overflow属性值为:hidden

废话不多说了,将关键代码贴出来了,兼容火狐,谷歌,ie

.cover {

position:fixed; top: 0px; right:0px; bottom:0px;filter: alpha(opacity=60); background-color: #777;

z-index: 1002; left: 0px; display:none;

opacity:0.5; -moz-opacity:0.5;

}

遮罩层的样式代码,红色部分是关键的部分

<body>

  <div class="container" >

    <div ></div>

    <a href="javascript:;" onclick="showMask()" >点我显示遮罩层</a><br />

  </div>

  <div ></div>

</body>

网页部分的代码

function showMask(){

$('body').css("overflow","hidden")

$("#cover").show();

}

js部分的代码。