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插件制作 自增长输入框实现代码
Aug 17 jQuery
JS jQuery使用正则表达式去空字符的简单实现代码
May 20 jQuery
jQuery.form.js的使用详解
Jun 14 jQuery
jQuery选择器之子元素选择器详解
Sep 18 jQuery
jQuery+SpringMVC中的复选框选择与传值实例
Jan 08 jQuery
jQuery实现的上传图片本地预览效果简单示例
Mar 29 jQuery
详解如何使用webpack打包多页jquery项目
Feb 01 jQuery
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 jQuery
基于jQuery实现挂号平台首页源码
Jan 06 jQuery
jQuery操作选中select下拉框的值代码实例
Feb 07 jQuery
jquery实现抽奖功能
Oct 22 jQuery
jquery实现广告上下滚动效果
Mar 04 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
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
PHP flush()与ob_flush()的区别详解
2013/06/03 PHP
PHP传参之传值与传址的区别
2015/04/24 PHP
JavaScript DOM学习第一章 W3C DOM简介
2010/02/19 Javascript
javascript判断ie浏览器6/7版本加载不同样式表的实现代码
2011/12/26 Javascript
window.opener用法和用途实例介绍
2013/08/19 Javascript
jQuery Form 页面表单提交的小例子
2013/11/15 Javascript
JQuery结合CSS操作打印样式的方法
2013/12/24 Javascript
js实现点击切换TAB标签实例
2015/08/21 Javascript
JS中创建函数的三种方式及区别
2016/03/13 Javascript
JQuery学习总结【二】
2016/12/01 Javascript
详解nodejs微信公众号开发——5.素材管理接口
2017/04/11 NodeJs
Vue中img的src是动态渲染时不显示的解决
2019/11/14 Javascript
浅析vue cli3 封装Svgicon组件正确姿势(推荐)
2020/04/27 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
vue3.0 项目搭建和使用流程
2021/03/04 Vue.js
使用Python开发windows GUI程序入门实例
2014/10/23 Python
深入解析Python中的urllib2模块
2015/11/13 Python
python Crypto模块的安装与使用方法
2017/12/21 Python
python调用c++返回带成员指针的类指针实例
2019/12/12 Python
基于h5py的使用及数据封装代码
2019/12/26 Python
python如何通过twisted搭建socket服务
2020/02/03 Python
Django media static外部访问Django中的图片设置教程
2020/04/07 Python
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
Penhaligon’s英国官网:成立于1870年的英国香水制造商
2021/02/18 全球购物
函数只定义了一次, 调用了一次, 但编译器提示非法重定义了-什么问题?
2014/10/03 面试题
大专生工程监理求职信
2013/10/04 职场文书
会展中心部门工作职责
2013/11/27 职场文书
白血病募捐倡议书
2014/05/14 职场文书
白莲教口号
2014/06/18 职场文书
初三学生语文考试作弊检讨书
2014/12/14 职场文书
2016年第16个全民国防教育日宣传活动总结
2016/04/05 职场文书
2019年感恩励志演讲稿(收藏备用)
2019/09/11 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS
详解Python为什么不用设计模式
2021/06/24 Python
dubbo服务整合zipkin详解
2021/07/26 Java/Android