jQuery遮罩层实例讲解

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

1.1 背景半透明遮罩层样式

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

页面 */ 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比遮罩层更高便可。主要问题是,如何控制提示框在浏览器居中。

<div class="jb51code">
<pre class="brush:js;">
/ 定位到页面中心 /
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插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...