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使用正则验证15/18身份证的方法示例
Apr 27 jQuery
详解jQuery中关于Ajax的几个常用的函数
Jul 17 jQuery
jQuery选择器之表单元素选择器详解
Sep 19 jQuery
jQuery实现的简单获取索引功能示例
Jun 04 jQuery
jQuery中ajax请求后台返回json数据并渲染HTML的方法
Aug 08 jQuery
JQuery通过后台获取数据遍历到前台的方法
Aug 13 jQuery
JS与jQuery判断文本框还剩多少字符可以输入的方法
Sep 01 jQuery
JQuery实现简单的复选框树形结构图示例【附源码下载】
Jul 16 jQuery
JQuery常用选择器功能与用法实例分析
Dec 23 jQuery
jQuery擦除插件eraser使用方法详解
Jan 11 jQuery
jQuery 常用特效实例小结【显示与隐藏、淡入淡出、滑动、动画等】
May 19 jQuery
jQuery实现滑动开关效果
Aug 02 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
模拟OICQ的实现思路和核心程序(二)
2006/10/09 PHP
利用PHP实现图片等比例放大和缩小的方法详解
2013/06/06 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
2016/11/03 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
用php实现分页效果的示例代码
2020/12/10 PHP
JavaScript实际应用:innerHTMl和确认提示的使用
2006/06/22 Javascript
基于jquery的图片的切换(以数字的形式)
2011/02/14 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
全面了解javascript三元运算符
2016/06/27 Javascript
React实现双向绑定示例代码
2016/09/19 Javascript
Vue 固定头 固定列 点击表头可排序的表格组件
2016/11/25 Javascript
javaScript中封装的各种写法示例(推荐)
2017/07/03 Javascript
React Native 截屏组件的示例代码
2017/12/06 Javascript
VUE DOM加载后执行自定义事件的方法
2018/09/07 Javascript
JS html事件冒泡和事件捕获操作示例
2019/05/01 Javascript
基于Node的Axure文件在线预览的实现代码
2019/08/28 Javascript
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
2020/12/14 NodeJs
[01:48]帕吉至宝加入游戏,遗迹战场现“千劫神屠”
2018/04/07 DOTA
详解Python中类的定义与使用
2017/04/11 Python
Python排序算法实例代码
2017/08/10 Python
python实现微信跳一跳辅助工具步骤详解
2018/01/04 Python
Django实战之用户认证(初始配置)
2018/07/16 Python
python-tkinter之按钮的使用,开关方法
2019/06/11 Python
Django 拆分model和view的实现方法
2019/08/16 Python
python动态文本进度条的实例代码
2020/01/22 Python
获取CSDN文章内容并转换为markdown文本的python
2020/09/06 Python
怎么处理XML的中文问题
2015/03/26 面试题
商场经理竞聘演讲稿
2014/01/01 职场文书
周年庆典邀请函范文
2014/01/24 职场文书
租房安全协议书
2014/08/20 职场文书
2014年自愿离婚协议书
2014/10/10 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
2014年党员整改措施
2014/10/24 职场文书
乡镇党建工作汇报材料
2014/10/27 职场文书
2014年实验室工作总结
2014/12/03 职场文书