javascript实现遮罩层动态效果实例


Posted in Javascript onMay 14, 2019

大家在网页上注册登录的时候,经常会看见弹出的遮罩层。

我这里实现的效果是:点击按钮弹出遮罩层,遮罩层下的内容不可选,并且登录框随着鼠标滚轮的下滑,动态的浮动到页面某个位置,点击关闭按钮关闭遮罩层。

这是鼠标滚动下滑到页面中间某部分时画面。虽然界面简单颜色随意,能看出效果才是最重要的哈哈哈哈。

javascript实现遮罩层动态效果实例

以下是html界面:

<body>
<!-- 主界面 -->
<div class="main">
  <div onclick="show()">登录</div>
</div>
 
  <!-- 设置遮罩层的div -->
<div id="shade"></div>
  <!-- 设置登录框 -->
<div id="loginBox">
  <div onclick="close()">关闭</div>
</div>
 
</body>

样式表:

*{padding:0px;margin:0px;}
.main{
  width:100%;
  height:3000px;
}
#shade{
  position:absolute;//绝对定位在页面左上角
  top:0px;
  left:0px;
  z-index:1000;
  display:none;
  width:100%;
  height:100%;
  background:yellow;
  opacity:0.3;
}
#loginBox{
  position:absolute;
  top:260px;
  left:30%;
  z-index:2000;
  display:none; 
  width:400px;
  height:200px;
  background:red;
  border:1px solid red;
}

js代码部分:

<script type="text/javascript">
window.onload=function(){
	window.onscroll=function(){
		//动态设置遮罩层的宽高与屏幕可见宽高一致,实现被遮罩页面的全覆盖
		document.getElementById("shade").style.width=document.body.clientWidth+"px";
		document.getElementById("shade").style.height=document.body.clientHeight+"px";
		
		//兼容谷歌  和 ie/firefox不同浏览器,获取滚动条到浏览器顶部的位置
		var h=document.body.scrollTop + document.documentElement.scrollTop;
		//用定时器实现下滑页面时,登录框延迟从顶部下滑到指定位置  
		setTimeout(function(){
			  //设置登录框始终在界面距离顶部260px的位置,因为style.top获取的值是数值,不带单位,所以在表达式最后人为添加单位
			  document.getElementById("loginBox").style.top=260 + h +"px";
		  },200);
	}
} 
//遮罩层与登录框弹出事件
function show(){ 
  document.getElementById("shade").style.display = "block";
  document.getElementById("loginBox").style.display = "block";
}
//遮罩层与登录框隐藏事件
function close(){
  document.getElementById("shade").style.display = "none";
  document.getElementById("loginBox").style.display = "none";
}
</script>

以上就是啦~

以上所述是小编给大家介绍的javascript实现遮罩层动态效果详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 建设银行登陆键盘
Jun 10 Javascript
javascript function调用时的参数检测常用办法
Feb 26 Javascript
jQuery中unwrap()方法用法实例
Jan 16 Javascript
javascript中sort()的用法实例分析
Jan 30 Javascript
jquery实现右键菜单插件
Mar 29 Javascript
jQuery特殊符号转义的实现
Nov 30 Javascript
Javascript highcharts 饼图显示数量和百分比实例代码
Dec 06 Javascript
基于$.ajax()方法从服务器获取json数据的几种方式总结
Jan 31 Javascript
Vue.directive()的用法和实例详解
Mar 04 Javascript
详解VUE项目中安装和使用vant组件
Apr 28 Javascript
js实现窗口全屏示例详解
Sep 17 Javascript
JavaScript实现单点登录的示例
Sep 23 Javascript
JQuery animate动画应用示例
May 14 #jQuery
微信小程序的线程架构【推荐】
May 14 #Javascript
jquery实现选项卡切换代码实例
May 14 #jQuery
Vue表单之v-model绑定下拉列表功能
May 14 #Javascript
JQuery样式操作、click事件以及索引值-选项卡应用示例
May 14 #jQuery
vue实现歌手列表字母排序下拉滚动条侧栏排序实时更新
May 14 #Javascript
vue实现动态按钮功能
May 13 #Javascript
You might like
PHP 地址栏信息的获取代码
2009/01/07 PHP
php mssql 日期出现中文字符的解决方法
2009/03/10 PHP
PHP基础学习之流程控制的实现分析
2013/04/28 PHP
PHP查询网站的PR值
2013/10/30 PHP
php的sprintf函数的用法 控制浮点数格式
2014/02/14 PHP
PHP精确计算功能示例
2016/11/29 PHP
PHP判断密码强度的方法详解
2017/05/26 PHP
浅谈PHP实现大流量下抢购方案
2017/12/15 PHP
PHP正则匹配到2个字符串之间的内容方法
2018/12/24 PHP
再谈Yii Framework框架中的事件event原理与应用
2020/04/07 PHP
一些不错的js函数ajax
2008/08/20 Javascript
防止xss和sql注入:JS特殊字符过滤正则
2013/04/18 Javascript
jQuery实现DIV层淡入淡出拖动特效的方法
2015/02/13 Javascript
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
JavaScript中常用的验证reg
2016/10/13 Javascript
html5+canvas实现支持触屏的签名插件教程
2017/05/08 Javascript
解析Vue.js中的组件
2018/02/02 Javascript
浅析vue中常见循环遍历指令的使用 v-for
2018/04/18 Javascript
vue 下列表侧滑操作实例代码详解
2018/07/24 Javascript
手把手教你写一个微信小程序(推荐)
2018/10/17 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
layui table 表格模板按钮的实例代码
2019/09/21 Javascript
WEB前端性能优化的7大手段详解
2020/02/04 Javascript
JavaScript实现无限轮播效果
2020/11/19 Javascript
docker django无法访问redis容器的解决方法
2019/08/21 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
selenium切换标签页解决get超时问题的完整代码
2020/08/30 Python
python多线程和多进程关系详解
2020/12/14 Python
莫斯科制造商的廉价皮大衣:Fursk
2020/06/09 全球购物
英语专业毕业生求职简历的自我评价
2013/10/24 职场文书
仓库管理专业个人的自我评价
2013/12/30 职场文书
个人授权委托书范本
2014/04/03 职场文书
《最大的麦穗》教学反思
2014/04/17 职场文书
单位工作证明范文
2014/09/14 职场文书
2014年向国旗敬礼活动总结
2014/09/27 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书