Demo地址:
http://www.sohoqd.com/alterdemo/demoIfm/IfmMaskDemo.html
/*
* IfmMask 1.1
* Copyright (c) 2010 Alterhz http://www.alterteam.cn
* Date: 2010-5-3
* 运用iframe元素添加的遮罩层,可以遮挡flash。
* 参数列表:
* zId:遮罩层iframe的Id号
* v:遮罩层是否可见
* l:遮罩层左边距
* t:遮罩层右边距
* w:遮罩层宽度
* h:遮罩层高度
* index:遮罩层深度
* o:遮罩层透明度
* color:遮罩层的颜色
* 函数列表:
* IfmMask.IfmMask(zId, v, l, t, w, h, index, o, color) //构造函数
* IfmMask.getVisible() //获取遮罩层的显示和隐藏状态
* IfmMask.show() //显示遮罩层
* IfmMask.hide() //隐藏遮罩层
* IfmMask.fadeIn() //缓慢淡入遮罩层
* IfmMask.fadeOut() //缓慢淡出遮罩层
* IfmMask.changeSize(w, h) //改变遮罩层的尺寸
* IfmMask.changeZoom(index) //改变遮罩层的深度
* IfmMask.changeAlpha(o) //改变遮罩层的透明度
* IfmMask.changePosition(l, t) //改变遮罩层的位置
* IfmMask.getDOM() //兼容IE、Firefox的遮罩层iframe DOM获取函数
* 使用方法,例如:
* (1) var z1 = new IfmMask('z1', true, "30px", "30px", "800px", "600px", 2, 0.5, "#f00");
* (2) var z2 = new IfmMask('z2'); z2.changePosition("200px", "200px");
* (3) $(z1.getDOM()).bind("click", function() { //事件处理函数 }); //给遮罩层添加事件处理函数
*/
//遮罩层的颜色
var maskColor;
//遮罩层构造函数
function IfmMask(zId, v, l, t, w, h, index, o, color) {
//遮罩层的Id号
this.id = zId;
//判断参数是否存在
if("undefined" == typeof(color)) {
maskColor = "#000000";
}
else {
maskColor = color;
}
//遮罩层iframe的html创建代码
var ifmStr = "<iframe id='" + zId + "' frameborder='0' src='javascript:parent.getPage()'></iframe>";
//将iframe添加到body中
$("body").append(ifmStr);
//判断参数是否存在
if("undefined" == typeof(l)) {
l = "0px";
}
if("undefined" == typeof(t)) {
t = "0px";
}
if("undefined" == typeof(w)) {
//获取屏幕宽度
w = $("body").width();
}
if("undefined" == typeof(h)) {
//获取屏幕高度。
h = $("body").height();
}
if("undefined" == typeof(index)) {
index = 2010;
}
//改变遮罩层的css。
$("#" + this.id).css({"position": "absolute", "left": l,"top": t , "width": w, "height": h, "z-index": index});
//判断参数是否存在
if("undefined" == typeof(o)) {
o = 0.5;
}
//改变遮罩层的透明度。
$("#" + this.id).fadeTo("fast", o);
//判断参数是否存在。
if("undefined" == typeof(v)) {
v = true;
}
//遮罩层是否可见
if(!v) {
$("#" + this.id).hide();
}
};
//改变遮罩层的深度
IfmMask.prototype.changeZoom = function(index) {
$("#" + this.id).css({"z-index": index});
}
//获取遮罩层的显示和隐藏状态
IfmMask.prototype.getVisible = function() {
if("none" == $("#" + this.id).css("display")) {
return false;
}
else {
return true;
}
}
//显示遮罩层
IfmMask.prototype.show = function() {
$("#" + this.id).show();
}
//隐藏遮罩层
IfmMask.prototype.hide = function() {
$("#" + this.id).hide();
}
//缓慢淡入遮罩层
IfmMask.prototype.fadeIn = function() {
$("#" + this.id).fadeIn();
}
//缓慢淡出遮罩层
IfmMask.prototype.fadeOut = function() {
$("#" + this.id).fadeOut();
}
//改变遮罩层的尺寸
IfmMask.prototype.changeSize = function(w, h) {
$("#" + this.id).css({"width": w, "height": h});
}
//改变遮罩层的位置
IfmMask.prototype.changePosition = function(l, t) {
$("#" + this.id).css({"left": l, "top": t});
}
//改变遮罩层的透明度
IfmMask.prototype.changeAlpha = function(o) {
$("#" + this.id).fadeTo("fast", o);
};
//兼容IE、Firefox的遮罩层iframe DOM获取函数
IfmMask.prototype.getDOM = function() {
return document.getElementById(this.id).contentDocument || document.frames[this.id].document;
};
//iframe元素的子页面
function getPage() {
var code = ["<html>"];
code.push("<body style='background:" + maskColor + "'>");
code.push("</body>");
code.push("</html>");
return code.join("");
}
引用:
http://www.alterteam.cn/blogDetail.html?id=47
Demo地址:
http://www.sohoqd.com/alterdemo/demoIfm/IfmMaskDemo.html
分享到:
相关推荐
**jQuery Loading遮罩层插件——busy-load** 在网页开发中,当用户触发需要等待的操作时,如数据加载或页面跳转,为了提供良好的用户体验,通常会使用loading动画来提示用户系统正在处理请求。"busy-load"就是这样...
非常好用的一款jquery遮罩层插件,网页制作必备。
FineMessBox作为一款JQuery插件,其主要优势在于提供了一个可自定义的遮罩层,能够在用户进行文件上传时,创建出一种全屏或局部的半透明覆盖效果,使得用户界面看起来更加专业且不会被其他元素干扰。遮罩层不仅美观...
**jQuery图片添加渐变遮罩层插件** 在网页设计中,为了提升视觉效果和用户体验,经常需要对图片进行各种处理。"jQuery图片添加渐变遮罩层插件"就是为了实现这一目标而设计的工具。它允许开发者为背景图片轻松添加...
这意味着它可以在一些较旧的项目中使用,这些项目可能尚未升级到最新的 jQuery 版本。 2. **全屏遮罩**:该插件的亮点之一是它可以实现全屏遮罩效果,无论页面内容如何滚动,遮罩层始终保持覆盖整个屏幕。这有助于...
"jquery.reveal"是一款基于jQuery的弹出层插件,通过简单的API调用,可以快速创建具有遮罩背景的弹出框。这个插件不仅易于使用,还支持多种自定义选项,如动画效果、关闭按钮、尺寸调整等,能够满足各种场景下的需求...
在网页开发中,有时我们需要创建一个遮罩层或者弹出框来提示用户或者阻止用户与页面其他部分的交互,这就是“基于jQuery的BlockUI”插件所做的事情。BlockUI是一款非常实用的jQuery插件,它能够方便地实现页面区域的...
在压缩包中,`说明.txt`文件可能包含了更多关于如何使用和配置Simple Overlay的详细信息,而`给力技术.url`可能是指向一个有关jQuery遮罩插件开发或教程的链接,对于深入理解和应用该插件非常有帮助。 总的来说,...
【jQuery弹出层插件thickbox】是一种广泛使用的JavaScript库,它基于强大的jQuery框架,为网页添加了优雅且功能丰富的弹出层效果。 Thickbox主要用于创建全屏背景的图片查看器、轻量级的模态对话框以及iframe加载等...
jQuery遮罩背景弹出层对话框插件是一种广泛应用于网页交互设计中的技术,它通过结合JavaScript库jQuery和CSS样式来实现动态的、具有视觉吸引力的弹出对话框效果。这种插件可以为用户提供丰富的交互体验,例如显示...
总的来说,"jQuery有遮罩层的广告幻灯片插件"是一个结合了jQuery技术、幻灯片展示和遮罩层交互的工具,它在网页设计中提供了一种高效、美观且用户体验良好的广告展示方式。开发者可以通过学习和使用这样的插件,提升...
示例的目的是iframe中弹出窗口后,遮罩层能遮盖整个可视区域,能让弹出层返回参数到iframe页面,也可以在弹出层直接提交,直接提交用jquery.form.js插件。 代码有详细注释,麻烦慢慢琢磨,有问题可qq联系,505074122
4. **事件绑定**:结合jQuery的事件处理函数,可以在特定用户交互(如点击、滚动等)时显示或隐藏遮罩层和提示,增强用户体验。 5. **兼容性**:作为jQuery插件,它通常能很好地兼容各种现代浏览器,包括Chrome、...
本文将深入探讨标题所提及的"jQuery弹出层插件三种简单遮罩弹出框效果",以及如何利用jQuery实现这些效果。 首先,让我们了解什么是弹出层和遮罩弹出框。弹出层(Popup Layer)是一种常见的网页交互设计,当用户...
这篇内容主要介绍的是一个基于jQuery的简单弹出遮罩层小插件,名为"qsBox",由作者原创。这个小插件的核心功能是创建一个可移动、可关闭的弹出层,它在设计时特别考虑了对老版本Internet Explorer(IE6、IE7和IE8)...
在实际项目中,开发者需要按照`README`的指示,正确引入`jQuery`库和这个插件的JS文件,并在适当的时机调用插件方法,比如在`$(document).ready()`或`window.onload`事件中。这样,`iframe`就能自动适应其内容的高度...
在这个主题中,我们关注的是一个基于jQuery库的遮罩插件,适用于jQuery 1.9及更高版本。jQuery是JavaScript的一个库,它简化了DOM操作、事件处理、动画和Ajax交互,极大地提高了开发效率。 这个遮罩插件旨在为网页...
10. **示例和文档**:压缩包中的示例文件可以帮助开发者理解如何在实际项目中使用该插件,而文档则提供了详细的技术指南和API参考。 总之,基于JQuery的弹窗插件利用了JQuery的强大功能,为开发者提供了一种便捷的...
"jquery-showloading遮罩层-防重复提交"是一款基于jQuery的插件,它旨在解决用户可能误点击导致的重复提交问题,并提供良好的加载反馈,提升用户体验。这款插件通过创建一个遮罩层来阻止用户在数据处理期间进行额外...