`
hbxiao135
  • 浏览: 108862 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用div层来实现页面半透明遮罩效果

阅读更多
实现效果:弹出一个窗口的时候,窗口后面的页面变暗,并且不能操作

难点:因为div层是不能把select控件遮住的,所以要特殊处理,方法两种,一种是在弹出窗口下面加一层iframe来遮住select;第二种是所以要在弹出的时候,先把select控件隐藏,这里选择第二种方法

实现原理:在页面上和弹出窗口中间加一个半透明的层,把页面的内容覆盖掉

代码:


<script language="javascript">
function Open()
{
  //隐藏select控件
  DispalySelect(0);  
  //显示遮罩层
  document.getElementById("divPageMask").style.display="block";
 //处理遮罩层
  resizeMask();
 window.onResize = resizeMask;
  //显示弹出窗口
  document.getElementById("divOpenWin").style.display="block";
}
function Close()
{
  //显示select控件
  DispalySelect(1);
  //处理遮罩层
  divPageMask.style.width = "0px";
 divPageMask.style.height = "0px";
 divOpenWin.style.display = "none";
 window.onResize = null;
  
  document.getElementById("divOpenWin").style.display="none";
}
//页面遮罩
function resizeMask()
{
 divPageMask.style.width = document.body.scrollWidth;
 divPageMask.style.height = document.body.scrollHeight;
 divOpenWin.style.left = ((document.body.offsetWidth - divOpenWin.offsetWidth) / 2);
 divOpenWin.style.top = ((document.body.offsetHeight - divOpenWin.offsetHeight) / 2);
}
function DispalySelect(val)
{  //显示和隐藏select控件
 var dispalyType;
  var arrdispalyType=["hidden","visible"];
  var arrObjSelect=document.getElementsByTagName("select");
  for (i=0;i<arrObjSelect.length;i++)
  {
    arrObjSelect[i].style.visibility=arrdispalyType[val];
  }
}
</script>

<style type="text/css">
.body,td{font-size:12px}
#divPageMask{background-color:white; filter:alpha(opacity=50);left:0px;position:absolute;top:0px;}
#divOpenWin{background-color:#EEEEEE;position: absolute;left:0px;top:0px;display: none;z-index:50; width:300px;height:150px}
</style>

<div id="divPageMask"></div>
<div id="divOpenWin"><center><a href="javascript:Close();">关闭</a></center></div>
<label></label>
<center>
 <table border="0" cellpadding="0" cellspacing="0" width="650">
 <tbody>
 <tr>
 <td colspan="2" align="center" height="90"><p><img src="http://www.sopull.com/Images/Index/logo.gif" height="60" width="250"></p>
 <p>&nbsp;</p>
 <p>&nbsp;</p></td>
 </tr>
 <tr>
 <td height="10" style="color:#666666;font-size:13px">&nbsp;</td>
 </tr>
 </tbody>
 </table>
 <table bgcolor="#e1e1e1" border="0" cellpadding="0" cellspacing="1" height="85" width="650">
 <tbody>
 <tr>
 <td align="center" bgcolor="#f9f9f9"><table height=50 cellspacing=0 cellpadding=0 width=600 style="margin-top:20px">
 <FORM name="f" action="http://www.sopull.com/ShopList.asp">
 <tbody>
 <tr>
 <td class="searchbar_word">关键字:</td>
 <td width="241"><input type="text" name="k" size=30 /></td>
 <td align=middle width=101 class="searchbar_word">所在地:</td>
 <td align=middle width=97 id="cn"><script language="javascript" src="http://www.sopull.com/Inc/Js/ListCity.asp?CityName=北京市"></script></td>
 <td align=middle width=95><input name="s" type=submit value=" 搜 铺 "></td>
 </tr>
 </form>
 <tr>
 <td width="64" height="30">&nbsp;</td>
 <td colspan="4" valign="middle" class="search_text">例如:餐厅;电器;超市 
 </table></td>
 </tr>
 </tbody>
 </table>
</center>
<p align="center">&nbsp;</p>
<p align="center"><a href="javascript:Open();">打开遮罩</a></p>
<p align="center">&nbsp;</p>
<table width="650" border="0" align="center" cellpadding="0" cellspacing="0">
 <tbody>
 <!--   <tr>
   <td align="center" background="Images/Index/line_2.gif" width="580"><img src="Images/Index/line_2.gif" height="9" width="9"></td>
   </tr>-->
 <tr>
 <td class="link" align="center" height="30"><a href="#" target=_blank><font color="#FF6600">免费提交店铺</font></a>&nbsp;|&nbsp; <a class="toplink" href="#">店铺推广</a>&nbsp;|&nbsp; <a class="toplink" href="#">关于搜铺</a>&nbsp;|&nbsp; <a class=b href="#" target=_blank>业务合作</a> &nbsp;|&nbsp; <a class="toplink" onClick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.sopull.com');return false;" href="http://www.sopull.com/#">设为首页</a>&nbsp;|&nbsp; <a class="toplink" onClick="javascript:window.external.addFavorite('http://www.sopull.com/','搜铺网-中国最大店铺搜索引擎')" href="http://www.sopull.com/#">加入收藏</a> </td>
 </tr>
 <tr>
 <td align="center" height="30">&copy;2007 搜铺网 &nbsp;&nbsp;&nbsp;&nbsp;粤ICP备07006767号</td>
 </tr>
 </tbody>
</table>
分享到:
评论
1 楼 lqixv 2009-09-09  
很好很强大

相关推荐

    js+html5实现半透明遮罩层弹框效果

    遮罩层弹框是前端开发中常见的交互效果,它通常用于在用户进行某些操作时,显示在页面上层的半透明遮罩,以提示用户当前状态或者用于表单提交等场景。 知识点1:HTML5中实现遮罩层弹框的结构 在HTML5中,我们通常...

    js+html5实现半透明遮罩层弹框效果.docx

    在现代网页设计中,半透明遮罩层弹框效果是一种非常常见的交互方式,它不仅可以提升用户体验,还能让页面更加美观。通过JavaScript与HTML5的结合使用,我们可以轻松地实现这一效果。 #### 二、技术背景 在开始之前...

    div背景半透明,覆盖整个可视区域的遮罩层效果

    1 、半透明效果可以使用 css3 中的 opacity 属性,在低版本的IE浏览器中使用IE的alpha 滤镜。代码: .opacity{ opacity:0.3; filter: alpha(opacity=30); background-color:#000; } 2 、要覆盖整个可视区域通常的...

    HTML5+CSS3 制作的图片半透明遮罩效果

    本主题聚焦于使用HTML5和CSS3来实现图片的半透明遮罩效果,这是一种常见且实用的设计手法,常用于增加用户界面的层次感和引导用户的注意力。 首先,HTML5中的`&lt;img&gt;`标签用于插入图像,其基本语法是`替代文本"&gt;`。...

    div层实现IE Firefox 页面半透明遮罩效果弹窗

    标题中的“div层实现IE Firefox 页面半透明遮罩效果弹窗”是指在网页设计中,使用HTML的div元素创建一个跨浏览器的半透明遮罩层,以实现弹窗效果。这个效果通常用于提示用户或者展示一些重要的信息,同时不影响用户...

    自定义半透明遮罩层

    在网页设计和开发中,自定义半透明遮罩层是一种常见的视觉效果,它通常用于创建交互式的用户体验,比如加载提示、弹出窗口或模态框背景。遮罩层可以覆盖整个页面或者特定区域,通过半透明黑色或灰色背景,使用户聚焦...

    css3半透明遮罩背景lightbox图片展示特效

    在“css3半透明遮罩背景lightbox图片展示特效”中,我们主要关注的是如何使用CSS3来创建具有半透明遮罩和动态效果的图片展示组件,通常被称为Lightbox。Lightbox是一种流行的设计模式,当用户点击图片预览链接时,会...

    自定义半透明遮罩层-源码

    在IT行业中,自定义半透明遮罩层是一个常见的前端开发任务,它主要用于创建一个覆盖在网页元素上方的半透明黑屏或灰屏效果,通常用于弹窗、加载提示或者阻止用户与页面其他部分的交互。这个"自定义半透明遮罩层-源码...

    DIV遮罩层 div div

    DIV遮罩层,即通过HTML中的`&lt;div&gt;`元素结合CSS样式和JavaScript脚本来实现的一种遮罩效果。通常,这个`&lt;div&gt;`元素被设置为绝对定位(`position: absolute`),并覆盖在整个页面之上,其宽度和高度根据页面的实际大小...

    页面加载div遮罩层

    在创建遮罩层时,我们通常会为`&lt;div&gt;`设置一个大的固定宽度和高度,覆盖整个屏幕,并设置适当的背景颜色(通常是半透明黑色),使其看起来像一个覆盖在页面上的层。通过CSS的 `position` 属性(如 `fixed` 或 `...

    jsp页面加载之遮罩层

    首先,遮罩层通常是一个半透明的div元素,覆盖在页面上,使得用户无法与页面其余部分交互,直到遮罩层消失。这在网页加载大型数据或者执行异步操作时特别有用,因为它可以防止用户误操作并传达出正在工作的状态。 ...

    数据加载进度条/自定义半透明遮罩层

    其次,自定义半透明遮罩层则是一种常用的界面交互设计,用于在页面加载或进行后台操作时覆盖整个界面,以防止用户误操作。半透明遮罩层可以提供一种视觉提示,让用户知道当前应用正在进行某种处理,同时保持界面的...

    CSS+DIV+JQuery源码实现遮罩效果

    在这个"CSS+DIV+JQuery源码实现遮罩效果"的资源中,我们可以学习如何利用这三种技术来创建一个功能完备且视觉效果良好的遮罩层。 首先,CSS(Cascading Style Sheets)是网页样式表语言,主要用于定义HTML或XML...

    jquery弹出半透明遮罩层

    你可以通过学习和理解这个代码,来掌握如何使用jQuery创建和控制半透明遮罩层。同时,为了适应不同的项目需求,你还可以进一步扩展这个功能,比如添加动画效果,或者让它支持自定义内容的模态对话框。总的来说,掌握...

    使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享

    通过上述的知识点介绍,可以了解到实现半透明遮罩效果不仅仅是简单地使用CSS样式覆盖,还需要考虑页面布局、交互逻辑以及浏览器兼容性等多方面的因素。通过精心设计和编写代码,可以创造出既美观又实用的半透明遮罩...

    js div层遮罩提示窗口效果

    1. 创建遮罩层:使用JavaScript动态创建一个div元素,并设置其宽高为浏览器窗口大小,背景颜色为半透明,然后将其添加到body元素中。 2. 创建提示窗口:同样使用JavaScript创建另一个div元素,用于显示具体的信息。...

    CSS3 实现Loading加载,页面遮罩层的应用

    遮罩层是一种全屏覆盖的半透明层,用于在特定操作(如加载、弹窗、提示信息)期间隐藏页面内容,提供视觉焦点并防止用户误操作。在CSS中,我们可以通过以下方式创建遮罩层: 1. **创建HTML结构**:同样,首先需要一...

    css3半透明遮罩lightbox效果.zip

    这里我们关注的是一个名为“css3半透明遮罩lightbox效果.zip”的压缩包,它包含了实现一个具有半透明遮罩层的lightbox效果的相关资源。Lightbox效果是一种常见的网页设计手法,用于在用户点击图片后,在当前页面上弹...

    遮罩层(多个实现的例子)/js/div

    通过学习这些例子,开发者可以了解如何在自己的项目中实现类似的遮罩层效果,提高网页的用户体验。同时,这也是对JavaScript基本操作和HTML布局技巧的实践应用,对于提升前端开发技能大有裨益。

Global site tag (gtag.js) - Google Analytics