网页制作 HTML实现遮罩层的方法 HTML中如何使用遮罩层
网页制作 HTML实现遮罩层的方法 HTML中如何使用遮罩层
Web页面中使用遮罩层,可防止重复操作,提示loading;也可以模拟弹出模态窗口。
实现思路:一个DIV作为遮罩层,一个DIV显示loading动态GIF图片。在下面的示例代码中,同时展示了如何在iframe子页面中调用显示和隐藏遮罩层。
示例代码:
index.html
XML/HTML Code复制内容到剪贴板
- >
- <htmllang="zh-CN">
- <head>
- <metacharset="utf-8">
- <metahttp-equiv="X-UA-Commpatible"content="IE=edge">
- <title>HTML遮罩层title>
- <linkrel="stylesheet"href="css/index.css">
- head>
- <body>
- <divclass="header"id="header">
- <divclass="title-outer">
- <spanclass="title">
- HTML遮罩层使用
- span>
- div>
- div>
- <divclass="body"id="body">
- <iframeid="iframeRight"name="iframeRight"width="100%"height="100%"
- scrolling="no"frameborder="0"
- style="border:0px;margin:0px;padding:0px;width:100%;height:100%;overflow:hidden;"
- οnlοad="rightIFrameLoad(this)"src="body.html">iframe>
- div>
- <divid="overlay"class="overlay">div>
- <divid="loadingTip"class="loading-tip">
- <imgsrc="data:images/loading.gif"/>
- div>
- <divclass="modal"id="modalDiv">div>
- <scripttype='text/javascript'src="js/jquery-1.10.2.js">script>
- <scripttype="text/javascript"src="js/index.js">script>
- body>
- html>
index.css
CSS Code复制内容到剪贴板
- *{
- margin:0;
- padding:0;
- }
- html,body{
- width:100%;
- height:100%;
- font-size:14px;
- }
- div.header{
- width:100%;
- height:100px;
- border-bottom:1pxdashedblue;
- }
- div.title-outer{
- position:relative;
- top:50%;
- height:30px;
- }
- span.title{
- text-align:left;
- position:relative;
- left:3%;
- top:-50%;
- font-size:22px;
- }
- div.body{
- width:100%;
- }
- .overlay{
- position:absolute;
- top:0px;
- left:0px;
- z-index:10001;
- display:none;
- filter:alpha(opacity=60);
- background-color:#777;
- opacity:0.5;
- -moz-opacity:0.5;
- }
- .loading-tip{
- z-index:10002;
- position:fixed;
- display:none;
- }
- .loading-tipimg{
- width:100px;
- height:100px;
- }
- .modal{
- position:absolute;
- width:600px;
- height:360px;
- border:1pxsolidrgba(0,0,0,0.2);
- box-shadow:0px3px9pxrgba(0,0,0,0.5);
- display:none;
- z-index:10003;
- border-radius:6px;
- }
index.js
JavaScript Code复制内容到剪贴板
- functionrightIFrameLoad(iframe){
- varpHeight=getWindowInnerHeight()-$('#header').height()-5;
- $('div.body').height(pHeight);
- console.log(pHeight);
- }
- //浏览器兼容取得浏览器可视区高度
- functiongetWindowInnerHeight(){
- varwinHeight=window.innerHeight
- ||(document.documentElement&&document.documentElement.clientHeight)
- ||(document.body&&document.body.clientHeight);
- returnwinHeight;
- }
- //浏览器兼容取得浏览器可视区宽度
- functiongetWindowInnerWidth(){
- varwinWidth=window.innerWidth
- ||(document.documentElement&&document.documentElement.clientWidth)
- ||(document.body&&document.body.clientWidth);
- returnwinWidth;
- }
- /**
- *显示遮罩层
- */
- functionshowOverlay(){
- //遮罩层宽高分别为页面内容的宽高
- $('.overlay').css({'height':$(document).height(),'width':$(document).width()});
- $('.overlay').show();
- }
- /**
- *显示Loading提示
- */
- functionshowLoading(){
- //先显示遮罩层
- showOverlay();
- //Loading提示窗口居中
- $("#loadingTip").css('top',
- (getWindowInnerHeight()-$("#loadingTip").height())/2+'px');
- $("#loadingTip").css('left',
- (getWindowInnerWidth()-$("#loadingTip").width())/2+'px');
- $("#loadingTip").show();
- $(document).scroll(function(){
- returnfalse;
- });
- }
- /**
- *隐藏Loading提示
- */
- functionhideLoading(){
- $('.overlay').hide();
- $("#loadingTip").hide();
- $(document).scroll(function(){
- returntrue;
- });
- }
- /**
- *模拟弹出模态窗口DIV
- *@paraminnerHtml模态窗口HTML内容
- */
- functionshowModal(innerHtml){
- //取得显示模拟模态窗口用DIV
- vardialog=$('#modalDiv');
- //设置内容
- dialog.html(innerHtml);
- //模态窗口DIV窗口居中
- dialog.css({
- 'top':(getWindowInnerHeight()-dialog.height())/2+'px',
- 'left':(getWindowInnerWidth()-dialog.width())/2+'px'
- });
- //窗口DIV圆角
- dialog.find('.modal-container').css('border-radius','6px');
- //模态窗口关闭按钮事件
- dialog.find('.btn-close').click(function(){
- closeModal();
- });
- //显示遮罩层
- showOverlay();
- //显示遮罩层
- dialog.show();
- }
- /**
- *模拟关闭模态窗口DIV
- */
- functioncloseModal(){
- $('.overlay').hide();
- $('#modalDiv').hide();
- $('#modalDiv').html('');
- }
body.html
XML/HTML Code复制内容到剪贴板
- >
- <htmllang="zh-CN">
- <head>
- <metacharset="utf-8">
- <metahttp-equiv="X-UA-Commpatible"content="IE=edge">
- <title>body页面title>
- <styletype="text/css">
- *{
- margin:0;
- padding:0;
- }
- html,body{
- width:100%;
- height:100%;
- }
- .outer{
- width:200px;
- height:120px;
- position:relative;
- top:50%;
- left:50%;
- }
- .inner{
- width:200px;
- height:120px;
- position:relative;
- top:-50%;
- left:-50%;
- }
- .button{
- width:200px;
- height:40px;
- position:relative;
- }
- .button#btnShowLoading{
- top:0;
- }
- .button#btnShowModal{
- top:30%;
- }
- style>
- <scripttype="text/javascript">
- functionshowOverlay(){
- //调用父窗口显示遮罩层和Loading提示
- window.top.window.showLoading();
- //使用定时器模拟关闭Loading提示
- setTimeout(function(){
- window.top.window.hideLoading();
- },3000);
- }
- functionshowModal(){
- //调用父窗口方法模拟弹出模态窗口
- window.top.showModal($('#modalContent').html());
- }
- script>
- head>
- <body>
- <divclass='outer'>
- <divclass='inner'>
- <buttonid='btnShowLoading'class='button'οnclick='showOverlay();'>点击弹出遮罩层button>
- <buttonid='btnShowModal'class='button'οnclick='showModal();'>点击弹出模态窗口button>
- div>
- div>
- <divid='modalContent'style='display:none;'>
- <divclass='modal-container'style='width:100%;height:100%;background-color:white;'>
- <divstyle='width:100%;height:49px;position:relative;left:50%;top:50%;'>
- <spanstyle='font-size:36px;width:100%;text-align:center;display:inline-block;position:inherit;left:-50%;top:-50%;'>模态窗口1span>
- div>
- <buttonclass='btn-close'style='width:100px;height:30px;position:absolute;right:30px;bottom:20px;'>关闭button>
- div>
- div>
- <scripttype='text/javascript'src="js/jquery-1.10.2.js">script>
- body>
- html>
运行结果:
初始化
显示遮罩层和Loading提示
显示遮罩层和模拟弹出模态窗口
以上就是本文的全部内容,希望对大家的学习有所帮助。
原文:http://www.cnblogs.com/haoqipeng/p/html-overlay.html
文章来源:https://www.jb51.net/web/444162.html
搜白度 |
www.sobd.cc |
教程弟 |
www.jcdi.cn |
搜码吧 |
www.somanba.cn |
作文哥 |
www.zuowenge.cn |
网页制作 HTML实现遮罩层的方法 HTML中如何使用遮罩层相关推荐
- HTML实现遮罩层的方法 HTML中如何使用遮罩层
Web页面中使用遮罩层,可防止重复操作,提示loading:也可以模拟弹出模态窗口. 实现思路:一个DIV作为遮罩层,一个DIV显示loading动态GIF图片.在下面的示例代码中,同时展示了如何在i ...
- html网页制作之细谈HTML前端项目开发过程中的细节及心得_避免入坑
细谈两类前端项目与编写过程中的技巧.心得 快乐的五一小长假,由于回家路途遥远,只好自己在校编前端网页.两天多的时间编写了两种不同风格的网页,人都敲傻了,还好只涉及到了HTML和CSS,并未加入JS模块 ...
- Cadence allegro中PASTMASK_TOP是什么?什么是钢网层?pcb打样中的钢网层是什么、有什么作用?
在利用cadence Pad design绘制元件的焊盘时有PASTMASK_TOP.PASTMASK_BOTTOM这两个参数.这两个参数指的是pcb的钢网层,那么什么是钢网层呢? 图1 图2 图3 ...
- 《HTML、CSS、JavaScript 网页制作从入门到精通》——6.6 单元格属性
本节书摘来自异步社区<HTML.CSS.JavaScript 网页制作从入门到精通>一书中的第6章,第6.6节,作者:[美]John Resig(莱西格) , Bear Bibeault( ...
- HTML元素中的属性2(路径详解)—零基础自学网页制作
相对路径与绝对路径的使用方法 在<HTML元素中的属性1-零基础自学网页制作>这一篇教程最后内容中,我们详细展示了"绝对路径"与"相对路径"在写法上 ...
- 《网页制作与网站建设从入门到精通》版权
图书在版编目(CIP)数据 网页制作与网站建设从入门到精通/何新起编著.--北京:人民邮电出版社,2013.7 ISBN 978-7-115-32360-6 Ⅰ.①网- Ⅱ.①何- Ⅲ.①网页制作工具 ...
- 《HTML、CSS、JavaScript 网页制作从入门到精通》——第6章 使用表格
本节书摘来自异步社区<HTML.CSS.JavaScript 网页制作从入门到精通>一书中的第6章,第6.1节,作者:[美]John Resig(莱西格) , Bear Bibeault( ...
- 零基础10天学会网页制作第一天
Hello,大家好,我是AbnerMing,从这篇文章起,我们开始进入为期10天的网页制作学习,具体怎么学习,及未来的就业前景,还请大家去看上一篇文章<零基础10天学会网页制作之前言>,这 ...
- 在html中插入层,网页制作问题-在背景上添加一个或多个层(也就是层叠)是怎么做的?...
动态的网页技术(DHTM)已经非常普及,本文强力向大家推荐一段完整并且是经典的网页多层代码,适用于IE及NETSCAPE游览器,可实现完善的二层网页功能,具体代码请见面文后程序. 该段代码功能:打开该 ...
最新文章
- 2021年大数据Flink(三十):Flink ​​​​​​​Table API SQL 介绍
- Linux那些事儿 之 戏说USB(15)设备
- Nginx与PHP(FastCGI)的安装、配置
- 学python爬虫需要什么基础-Python爬虫需要学习那些东西?
- LeetCode Reverse Linked List II 反置链表2
- 02- 流行歌曲 最新热门
- 【网易出品】2019不容错过的泛娱乐创新峰会来了!
- 指令篇: 查看系统版本信息___uname
- Linux命令执行顺序— ||和和; 比较
- 估计很多前端都没学过单元测试~
- python3 函数注意要点
- c++判断奇偶_第十一届(今年)蓝桥杯省模拟赛 试题+源码 C/C++详解
- 1过程流程图 3 apqp_干货 | APQP过程流程图及最新版全套表格汇总,收藏备用!
- listview 不可滑动问题解决
- 服务监控(一)之安装Prometheus
- Spring Boot 2.1.2配置文件参考配置项官方谷歌翻译版本
- 【Spring Security Oauth2】构建资源服务器(二):授权管理(Web授权,注解授权:securedEnabled, prePostEnabled, jsr250Enabled)
- CSS预处理器语言:Sass、LESS、Stylus
- openCV calcHist函数的使用
- Android 如何优雅的集成FaceBook