jQuery遮罩层实例讲解


Posted in jQuery onMay 11, 2017

本文实例为大家分享了jQuery遮罩层展示的具体代码,供大家参考,具体内容如下

1.1 背景半透明遮罩层样式

需要一个黑色(当然也可以其他)背景,且须设置为绝对定位,以下是项目中用到的css样式:

/* 半透明的遮罩层 */
#overlay {
  background: #000;
  filter: alpha(opacity=50); /* IE的透明度 */
  opacity: 0.5; /* 透明度 */
  display: none;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 100; /* 此处的图层要大于页面 */
  display:none;
}

1.2 jQuery实现遮罩

/* 显示遮罩层 */
function showOverlay() {
  $("#overlay").height(pageHeight());
  $("#overlay").width(pageWidth());

  // fadeTo第一个参数为速度,第二个为透明度
  // 多重方式控制透明度,保证兼容性,但也带来修改麻烦的问题
  $("#overlay").fadeTo(200, 0.5);
}

/* 隐藏覆盖层 */
function hideOverlay() {
  $("#overlay").fadeOut(200);
}

/* 当前页面高度 */
function pageHeight() {
  return document.body.scrollHeight;
}

/* 当前页面宽度 */
function pageWidth() {
  return document.body.scrollWidth;
}

1.3 提示框

遮罩的目的无非让人无法操作内容,突出提示框,而提示框可参考上面的制作,z-index比遮罩层更高便可。主要问题是,如何控制提示框在浏览器居中。

/* 定位到页面中心 */
function adjust(id) {
  var w = $(id).width();
  var h = $(id).height();
  
  var t = scrollY() + (windowHeight()/2) - (h/2);
  if(t < 0) t = 0;
  
  var l = scrollX() + (windowWidth()/2) - (w/2);
  if(l < 0) l = 0;
  
  $(id).css({left: l+'px', top: t+'px'});
}

//浏览器视口的高度
function windowHeight() {
  var de = document.documentElement;

  return self.innerHeight || (de && de.clientHeight) || document.body.clientHeight;
}

//浏览器视口的宽度
function windowWidth() {
  var de = document.documentElement;

  return self.innerWidth || (de && de.clientWidth) || document.body.clientWidth
}

/* 浏览器垂直滚动位置 */
function scrollY() {
  var de = document.documentElement;

  return self.pageYOffset || (de && de.scrollTop) || document.body.scrollTop;
}

/* 浏览器水平滚动位置 */
function scrollX() {
  var de = document.documentElement;

  return self.pageXOffset || (de && de.scrollLeft) || document.body.scrollLeft;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
Jun 26 jQuery
jQuery实现的页面遮罩层功能示例【测试可用】
Oct 14 jQuery
浅谈jquery fullpage 插件增加头部和版权的方法
Mar 20 jQuery
jQuery中图片展示插件highslide.js的简单dom
Apr 22 jQuery
jquery 通过ajax请求获取后台数据显示在表格上的方法
Aug 08 jQuery
jQuery动态操作表单示例【基于table表格】
Dec 06 jQuery
jquery多级树形下拉菜单的实例代码
Jul 09 jQuery
jQuery实现的解析本地 XML 文档操作示例
Apr 30 jQuery
JQuery事件冒泡和默认行为代码实例
May 13 jQuery
jQuery实现视频展示效果
May 30 jQuery
jQuery实现日历效果
Sep 11 jQuery
jQuery实现全选按钮
Jan 01 jQuery
jQuery zTree树插件动态加载实例代码
May 11 #jQuery
jQuery实现的简单在线计算器功能
May 11 #jQuery
jQuery+PHP+Mysql实现抽奖程序
Apr 12 #jQuery
JQuery实现定时刷新功能代码
May 09 #jQuery
jQuery插件开发发送短信倒计时功能代码
May 09 #jQuery
jquery.uploadifive插件怎么解决上传限制图片或文件大小问题
May 08 #jQuery
jquery平滑滚动到顶部插件使用详解
May 08 #jQuery
You might like
phpmyadmin里面导入sql语句格式的大量数据的方法
2010/06/05 PHP
php根据日期显示所在星座的方法
2015/07/13 PHP
WordPress主题制作中自定义头部的相关PHP函数解析
2016/01/08 PHP
全面解析PHP操作Memcache基本函数
2016/07/14 PHP
thinkPHP数据库增删改查操作方法实例详解
2016/12/06 PHP
JavaScript 字符串乘法
2009/08/20 Javascript
JavaScript中的isXX系列是否继续使用的分析
2011/04/16 Javascript
统计jQuery中各字符串出现次数的工具
2012/05/03 Javascript
基于jQuery的遍历同id元素 并响应事件的代码
2012/06/14 Javascript
JavaScript 更严格的相等 [译]
2012/09/20 Javascript
深入理解JSON数据源格式
2014/01/10 Javascript
js与applet相互调用的方法
2016/06/22 Javascript
jQuery 常见小例汇总
2016/12/14 Javascript
解决ie img标签内存泄漏的问题
2017/10/13 Javascript
Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
2018/08/09 jQuery
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
vue2.x 对象劫持的原理实现
2020/04/19 Javascript
vue npm install 安装某个指定的版本操作
2020/08/11 Javascript
vue实现点击按钮“查看详情”弹窗展示详情列表操作
2020/09/09 Javascript
python实现自动登录人人网并采集信息的方法
2015/06/28 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
2019/01/14 Python
Pytorch之Variable的用法
2019/12/31 Python
numpy中生成随机数的几种常用函数(小结)
2020/08/18 Python
Python全局变量与global关键字常见错误解决方案
2020/10/05 Python
用python-webdriver实现自动填表的示例代码
2021/01/13 Python
简单介绍CSS3中Media Query的使用
2015/07/07 HTML / CSS
美国在线印刷公司:PsPrint
2017/10/12 全球购物
Kendra Scott官网:美国领先的时尚配饰品牌
2020/10/22 全球购物
中英文自我评价常用句型
2013/12/19 职场文书
早餐连锁店计划书
2014/01/08 职场文书
小学生开学第一课活动方案
2014/03/27 职场文书
合伙经营协议书
2014/04/18 职场文书
厨房领班竞聘演讲稿
2014/04/23 职场文书
计算机考试作弊检讨书1000字
2015/01/01 职场文书
2015年感恩母亲节活动方案
2015/05/04 职场文书
不同品牌、不同型号对讲机如何互相通联
2022/02/18 无线电