当前位置:  编程技术>jquery

JQuery 遮罩层(mask)实现代码

    来源: 互联网  发布时间:2014-10-04

    本文导语:  在 JQuery 遮罩层效果实现代码中,其中有mask()和unmask()这两个方法,这两个方法在指定的元素上添加一个遮罩层和一个提示消息实现,增加客户体验。 有时为了使用这一两个方法需要引入一个比较“庞大”的Extjs进来,觉得有点不...

在 JQuery 遮罩层效果实现代码中,其中有mask()和unmask()这两个方法,这两个方法在指定的元素上添加一个遮罩层和一个提示消息实现,增加客户体验。

有时为了使用这一两个方法需要引入一个比较“庞大”的Extjs进来,觉得有点不划算,于是自己用jquery实现了一个比较简单mask、unmask方法来实现该效果。大家知道jquery是一个优秀的javascript框架,不但体积小而且使用方便,我现在逐渐将系统中使用Extjs实现的代码或组建全部更换成Jquery来实现。

这些代码是根据网友实现的documentMask基础上进行整改的。更加灵活方便了。
 

代码示例:
(function(){
$.extend($.fn,{
mask: function(msg,maskDivClass){
this.unmask();
// 参数
var op = {
opacity: 0.8,
z: 10000,
bgcolor: '#ccc'
};
var original=$(document.body);
var position={top:0,left:0};
if(this[0] && this[0]!==window.document){
original=this;
position=original.position();
}
// 创建一个 Mask 层,追加到对象中
var maskDiv=$('
');
maskDiv.appendTo(original);
var maskWidth=original.outerWidth();
if(!maskWidth){
maskWidth=original.width();
}
var maskHeight=original.outerHeight();
if(!maskHeight){
maskHeight=original.height();
}
maskDiv.css({
position: 'absolute',
top: position.top,
left: position.left,
'z-index': op.z,
width: maskWidth,
height:maskHeight,
'background-color': op.bgcolor,
opacity: 0
});
if(maskDivClass){
maskDiv.addClass(maskDivClass);
}
if(msg){
var msgDiv=$('
'+msg+'
');
msgDiv.appendTo(maskDiv);
var widthspace=(maskDiv.width()-msgDiv.width());
var heightspace=(maskDiv.height()-msgDiv.height());
msgDiv.css({
cursor:'wait',
top:(heightspace/2-2),
left:(widthspace/2-2)
});
}
maskDiv.fadeIn('fast', function(){
// 淡入淡出效果
$(this).fadeTo('slow', op.opacity);
})
return maskDiv;
},
unmask: function(){
var original=$(document.body);
if(this[0] && this[0]!==window.document){
original=$(this[0]);
}
original.find("> div.maskdivgen").fadeOut('slow',0,function(){
$(this).remove();
});
}
});
})();

JQuery 遮罩层 实例代码:
 

代码示例:



body{
font-size:12px;
}



(function(){
$.extend($.fn,{
mask: function(msg,maskDivClass){
this.unmask();
// 参数
var op = {
opacity: 0.8,
z: 10000,
bgcolor: '#ccc'
};
var original=$(document.body);
var position={top:0,left:0};
if(this[0] && this[0]!==window.document){
original=this;
position=original.position();
}
// 创建一个 Mask 层,追加到对象中
var maskDiv=$('
');
maskDiv.appendTo(original);
var maskWidth=original.outerWidth();
if(!maskWidth){
maskWidth=original.width();
}
var maskHeight=original.outerHeight();
if(!maskHeight){
maskHeight=original.height();
}
maskDiv.css({
position: 'absolute',
top: position.top,
left: position.left,
'z-index': op.z,
width: maskWidth,
height:maskHeight,
'background-color': op.bgcolor,
opacity: 0
});
if(maskDivClass){
maskDiv.addClass(maskDivClass);
}
if(msg){
var msgDiv=$('
'+msg+'
');
msgDiv.appendTo(maskDiv);
var widthspace=(maskDiv.width()-msgDiv.width());
var heightspace=(maskDiv.height()-msgDiv.height());
msgDiv.css({
cursor:'wait',
top:(heightspace/2-2),
left:(widthspace/2-2)
});
}
maskDiv.fadeIn('fast', function(){
// 淡入淡出效果
$(this).fadeTo('slow', op.opacity);
})
return maskDiv;
},
unmask: function(){
var original=$(document.body);
if(this[0] && this[0]!==window.document){
original=$(this[0]);
}
original.find("> div.maskdivgen").fadeOut('slow',0,function(){
$(this).remove();
});
}
});
})();



测试


div遮罩
关闭div遮罩
全部遮罩


    
 
 

您可能感兴趣的文章:

  • 通过javascript库JQuery实现页面跳转功能代码
  • jquery代码-如何使用jQuery来解析xml
  • jQuery概述,代码举例及最新版下载
  • jquery代码-如何使用jQuery来检测右键和左键的鼠标单击两种情况
  • jQuery 禁用右键菜单的简单代码
  • jQuery页面加载完毕再执行代码多种方法
  • jquery的父子兄弟节点查找示例代码
  • JQuery实现元素屏幕居中显示的代码
  • jQuery 代码模块化 TerrificJS
  • 在myeclipse中如何加入jquery代码提示功能
  • jquery弹窗代码示例
  • Jquery在指定DIV加载HTML示例代码
  • jquery遍历checkbox代码与说明
  • JQUERY 设置SELECT选中项代码
  • jQuery获得内容和属性示例代码
  • jQuery的each终止或跳过示例代码
  • jquery代码-如何使用多个属性来进行过滤
  • 简单的代码实现jquery定时器
  • jquery捕捉回车事件的代码
  • jQuery实现回车键(Enter)切换文本框焦点的代码实例
  • jquery实现图片路径不存在时进行替换的代码
  • struts+spring+hibernate+jquery实现分页功能的几个基本类介绍(异步加载)
  • jQuery实现CSS3动画效果的插件 jQuery Transit
  • jquery 回车登录的实现方法
  • 基于jQuery实现的MVC开发框架 CorMVC
  • jQuery Trim去除字符串首尾空字符的实现方法说明
  • jquery插件开发之实现jquery手风琴功能分享
  • jquery实现的导航固定效果
  • jquery 实现弹出div位于屏幕正中(图文)
  • jquery特效 table鼠标滑过变色的实现代码
  • Jquery点击高亮显示的实现代码
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • jQuery输入格式控制插件 Masked Input Plugin
  • Jquery操作html复选框checkbox:全选,全不选和反选
  • jQuery鼠标动画插件 jquery-ahover
  • jQuery向导插件 Jquery Wizard Plugin
  • jQuery圆角插件 jQuery Corners
  • jQuery相册插件 jQuery.popeye
  • jQuery UI组件 jQuery UI
  • jQuery右键菜单插件 jQuery ContextMenu
  • jQuery分页插件 Pagination jQuery Plugin
  • jQuery日历插件 jQuery Week Calendar
  • jQuery的中文日历插件 jQuery.datePickerCn
  • jQuery的CSV插件 jQuery CSV
  • jQuery的气泡提示插件 jquery.ns_bub.js
  • jQuery气泡提示插件 jquery-rollover-tooltip
  • jQuery对话框 jQuery Modal Dialog
  • jQuery 插件 jQuery Ripples
  • 精简版的jQuery jQuery.ish
  • jQuery的OpenSocial插件 OpenSocial jQuery
  • jQuery链接插件 jquery.biggerlink
  • 在线客服jQuery 插件 jQuery.onServ
  • jQuery日历插件 jQuery Verbose Calendar
  • jQuery消息提醒插件 jQuery Notty


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3