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插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
Apr 10 jQuery
jquery中$.fn和图片滚动效果实现的必备知识总结
Apr 21 jQuery
jQuery开源组件BootstrapValidator使用详解
Jun 29 jQuery
简单实现jQuery弹窗效果
Oct 30 jQuery
jQuery中库的引用方法
Jan 06 jQuery
jQuery中可见性过滤器简单用法示例
Mar 31 jQuery
解决jquery有正确返回值但不执行success函数的问题
Aug 20 jQuery
jquery.pagination.js分页使用教程
Oct 23 jQuery
jQuery实现的五星点评功能【案例】
Feb 18 jQuery
jQuery选择器之层次选择器用法实例分析
Feb 19 jQuery
jQuery操作cookie的示例代码
Jun 05 jQuery
jQuery实现简易QQ聊天框
Feb 10 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
谏山创故乡大分县日田市水坝将设立《进击的巨人》立艾伦、三笠以及阿尔敏的铜像!
2020/03/06 日漫
php print EOF实现方法
2009/05/21 PHP
在PHP中运行Linux命令并启动SSH服务的例子
2014/06/12 PHP
php计划任务之ignore_user_abort函数实现方法
2015/01/08 PHP
Yii2框架类自动加载机制实例分析
2018/05/02 PHP
常见的5个PHP编码小陋习以及优化实例讲解
2021/02/27 PHP
TNC vs IO BO3 第一场2.13
2021/03/10 DOTA
键盘KeyCode值列表汇总
2013/11/26 Javascript
快速学习jQuery插件 Cookie插件使用方法
2015/12/01 Javascript
简单谈谈Vue 模板各类数据绑定
2016/09/25 Javascript
浅析上传头像示例及其注意事项
2016/12/14 Javascript
基于代数方程库Algebra.js解二元一次方程功能示例
2017/06/09 Javascript
详解bootstrap用dropdown-menu实现上下文菜单
2017/09/22 Javascript
JS实现动态无缝轮播
2020/01/11 Javascript
python之Character string(实例讲解)
2017/09/25 Python
python 按照固定长度分割字符串的方法小结
2018/04/30 Python
pyqt5 QScrollArea设置在自定义侧(任何位置)
2019/09/25 Python
Python openpyxl模块原理及用法解析
2020/01/19 Python
python入门之井字棋小游戏
2020/03/05 Python
Python reduce函数作用及实例解析
2020/05/08 Python
python代码实现将列表中重复元素之间的内容全部滤除
2020/05/22 Python
详解Python IO口多路复用
2020/06/17 Python
马来西亚银饰品牌:JEOEL
2017/12/15 全球购物
TripAdvisor日本:全球领先的旅游网站
2019/02/14 全球购物
有机婴儿毛毯和衣服:Monica + Andy
2020/03/01 全球购物
会计与审计专业大专生求职信
2013/10/03 职场文书
五水共治捐款倡议书
2014/05/14 职场文书
先进单位申报材料
2014/12/25 职场文书
2015年化验员工作总结
2015/04/10 职场文书
傲慢与偏见读书笔记
2015/06/29 职场文书
2015中学教学工作总结
2015/07/22 职场文书
党员理论学习心得体会
2016/01/21 职场文书
详解Vue的options
2021/05/15 Vue.js
Python实现生活常识解答机器人
2021/06/28 Python
python Django框架快速入门教程(后台管理)
2021/07/21 Python
mybatis源码解读之executor包语句处理功能
2022/02/15 Java/Android