当前位置:首页 > 编程教程 > jQuery技术文章 > jQuery遮罩层实例讲解

jQuery遮罩层代码分享

  • 发布时间:
  • 作者:码农之家
  • 点击:98

这篇文章主要知识点是关于jQuery、遮罩、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

Web前端开发HTML5/CSS3/jQuery/AJAX从学到用完美实践
  • 类型:前端开发大小:167.1 MB格式:PDF作者:阮晓龙
立即下载

jQuery遮罩层实例讲解

本文实例为大家分享了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;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

jQuery 相关电子书
学习笔记
网友NO.205324

使用jQuery制作Web页面遮罩层插件的实例教程

在网页上经常遇到需要等待很久的操作,比如导出报表等。为了预防用户点击其他操作或者多次点击同个功能,需要用遮罩层把页面或者操作区盖住,防止用户进行下一步操作,同时可以提高界面友好度,让用户知道操作正在执行。 $.fn.extend({ /** * 给元素添加遮罩层 * @param message {String} [可选]遮罩层显示内容 */ mask: function (message) { var $target = this, fixed = false, targetStatic = true; if (Object.prototype.toString.call(message) !== '[object String]' || !message) { //如果message为空或者不是字符串,则用默认的消息提示。 message = '请稍候。。。'; } if ($target.length === 0) { $target = $('body'); } else { if ($target.length 1) { $target = $target.first(); } if ($target[0] === window || $target[0] === document) { $target = $('body'); } } if($target[0] === document.body){ fixed = true; } //如果目标元素已经有遮罩层,获取遮罩层 var old = $targe……

网友NO.228413

jQuery操作dom实现弹出页面遮罩层(web端和移动端阻止遮罩层的滑动)

最近项目遇到了遮罩层的一些问题,总结一下: 弹出遮罩层 遮罩层弹出有非常多的方法,这里只写出本人用的代码,使用jq操作dom的方法进行实现的。 style.box{position:absolute;width:100%;left:50%;height:auto;z-index:100;background-color:#f5f5f5;border:1px #ddd solid;padding:1px;}/stylediv id="bg" v-click="closeMask()"/divdiv class="box" input v-click="closeMask()" class="inpt_bottomb white" value="取 消" type="button" /div class="clear"/div/div /div #bg为透明度为0.6的一个遮罩页面,.box为遮罩层上的按钮。 //弹出遮罩$("#bg").css({display: "block", height: $(document).height()});var $box = $('.box');$box.css({//设置弹出层距离左边的位置left: ($("body").width() - $box.width()) / 2 -5 + "px",//设置弹出层距离上面的位置top: ($(window).height() - $box.height()) + $(window).scrollTop() + "px",display: "block"}); 有了触发遮罩的行为后,设置遮罩的高度为整个页面高度和可见性……

网友NO.646932

jQuery阻止移动端遮罩层后页面滚动

css代码: .ovfHiden{overflow: hidden;height: 100%;} jquery: $(".header_right").click(function(){ $('html,body').addClass('ovfHiden'); //使网页不可滚动 $(".searchbox").show(); }) $(".yg-close").click(function(){ $('html,body').removeClass('ovfHiden'); //使网页恢复可滚 $(".searchbox").hide(); }) 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持码农之家! ……

网友NO.599411

jQuery+css+html实现页面遮罩弹出框

页面遮罩弹出框是最常见的一种情况,今天用jQuery实现页面遮罩弹出框,主要用的技术有JQuery,css和html, html代码如下: div id="main"a href="javascript:showBg();"点击这里查看效果/a div id="fullbg"/div div id="dialog" p class="close"a href="#" onclick="closeBg();"关闭/a/p div正在加载,请稍后..../div /div /div css代码如下: body { font-family:Arial, Helvetica, sans-serif; font-size:12px; margin:0; } #main { height:1800px; padding-top:90px; text-align:center; } #fullbg { background-color:gray; left:0; opacity:0.5; position:absolute; top:0; z-index:3; filter:alpha(opacity=50); -moz-opacity:0.5; -khtml-opacity:0.5; } #dialog { background-color:#fff; border:5px solid rgba(0,0,0, 0.4); height:400px; left:50%; margin:-200px 0 0 -200px; padding:1px; position:fixed !important; /* 浮动对话框 */ position:absolute; top:50%; width:400px; z-index:5; border-radius:5px; display:none; } #dialog p { margin:0 0 12px; height:24px; line-heigh……

网友NO.336828

jQuery对话框插件ArtDialog在双击遮罩层时出现关闭现象的解决方法

本文实例讲述了jQuery对话框插件ArtDialog在双击遮罩层时出现关闭现象的解决方法。分享给大家供大家参考,具体如下: 大家都知道,ArtDialog是一款非常不错的、轻量级的、基于jQuery的对话框插件,深受大家的追捧,大伙可以到一下地址进行下载: https://code.google.com/p/artdialog/ https://github.com/aui/artDialog 截止到2014年9月17日,已经有几个重大的版本v4.1.7、v5.0.4和v6.0.2,其中4.x版本是支持iframe的,以后的版本则去掉了这一功能。具体可见之前下载地址说明。 但是在该插件中,如果我们双击遮罩层处,那么这时候对话框则会自动关闭,那么该怎样解决这个问题呢?请看以下说明(这里我以v4.1.7版本为例): 1.打开artDialog.source.js这个文件,大概在1404行处(或者查找关键字“dblclick”): lockMask.bind('click', function () {that._reset();}).bind('dblclick', function () { that._click(……

<
1
>

Copyright 2018-2020 www.xz577.com 码农之家

版权投诉 / 书籍推广 / 赞助:520161757@qq.com