轻量级网页遮罩层jQuery插件用法实例
本文实例讲述了轻量级网页遮罩层jQuery插件用法。分享给大家供大家参考。具体如下:
使用jQuery的好处是很多人为它写一些组件,而在项目所需用到功能也都可以找到一些组件去完成。
现在又这样一个需求当用户点击一个按钮后不允许用户进行任何的操作,取而代之的是弹出一个遮罩层显示一个loading提示框,效果如下。
其实这个需求很简单,但很多组件体积相对这个需求来说太大了,在网上瞎溜达了找到了一个还不错的组件,作者是上面也没有写。现在就来分析一下这个组件的源码和使用
/**
* @部分参数说明
*/
(function($){
$.fn.extend({
//主函数
toggleLoading: function(options){
// 找到遮罩层
var crust = this.children(".x-loading-wanghe");
// 当前操作的元素
var thisjQuery = this;
// 实现toogle(切换遮罩层出现与消失)效果的判断方法
if(crust.length>0){
if(crust.is(":visible")){
crust.fadeOut(500);
}else{
crust.fadeIn(500);
}
return this;
}
// 扩展参数
var op = $.extend({
z: 9999,
msg:'数据加载中...',
iconUrl:'images/loading.gif',
width:18,
height:18,
borderColor:'#6bc4f5',
opacity:0.5,
agentW:thisjQuery.outerWidth(),
agentH:thisjQuery.outerHeight()
},options);
if(thisjQuery.css("position")=="static")
thisjQuery.css("position","relative");
//var w = thisjQuery.outerWidth(),h = thisjQuery.outerHeight();
var w = op.agentW,h = op.agentH;
crust = $("
'position': 'absolute',
'z-index': op.z,
'display':'none',
'width':w+'px',
'height':h+'px',
'text-align':'center',
'top': '0px',
'left': '0px',
'font-family':'arial',
'font-size':'12px',
'font-weight':'500'
}).attr("class","x-loading-wanghe");
var mask = $("
'position': 'absolute',
'z-index': op.z+1,
'width':'100%',
'height':'100%',
'background-color':'#333333',
'top': '0px',
'left': '0px',
'opacity':op.opacity
});
//71abc6,89d3f8,6bc4f5
var msgCrust = $("").css({//消息外壳
'position': 'relative',
'top': (h-30)/2+'px',
'z-index': op.z+2,
'height':'24px',
'display':'inline-block',
'background-color':'#cadbe6',
'padding':'2px',
'color':'#000000',
'border':'1px solid '+op.borderColor,
'text-align':'left',
'opacity':0.9
});
var msg = $(""+op.msg+"").css({//消息主体
'position': 'relative',
'margin': '0px',
'z-index': op.z+3,
'line-height':'22px',
'height':'22px',
'display':'inline-block',
'background-color':'#efefef',
'padding-left':'25px',
'padding-right':'5px',
'border':'1px solid '+op.borderColor,
'text-align':'left',
'text-indent':'0'
});
var msgIcon = $("").css({//图标
'position': 'absolute',
'top': '3px',
'left':'3px',
'z-index': op.z+4,
'width':'18px',
'height':'18px'
});
// 拼装遮罩层
msg.prepend(msgIcon);
msgCrust.prepend(msg);
crust.prepend(mask);
crust.prepend(msgCrust);
thisjQuery.prepend(crust);
// alert(thisjQuery.html());
crust.fadeIn(500);
//模态设置
return this;
}
});
})(jQuery);
相关配置
配置&configure
全部配置
默认值
说明
z:
9999
图层z-index,当蒙版遮罩不住时候适当增大其值
msg:
数据加载中...
提示信息
iconUrl:
images/loading.gif
提示图片url
height:
18
图标默认高(px)
width:
18
图标默认宽(px)
borderColor
#6bc4f5
提示的边框颜色
opacity:
0.5
蒙版的透明度
agentW:
当前元素的宽度
蒙版的宽度
agentH:
当前元素的高度
蒙版的高度
希望本文所述对大家的jquery程序设计有所帮助。相关阅读:
jQuery中 delegate使用的问题
HTML中table表格标签的基础学习教程
Android实现Activity水平和垂直滚动条的方法
Android仿微信滑动弹出编辑、删除菜单效果、增加下拉刷新功能
如何查看SQLSERVER中某个查询用了多少TempDB空间
Java中使用Preconditions来检查传入参数介绍
CentOS 6.2(32位/64位) 安装步骤图文详解
PHP中的事务使用实例
AngularJS仿苹果滑屏删除控件
c++双向链表操作示例(创建双向链、双向链表中查找数据、插入数据等)
解析C语言中结构体struct的对齐问题
Win10预览版build 10525更新详解 新增压缩存储管理功能
jQuery实现下拉框多选 jquery-multiselect 的实例代码
在Win10里如何找到Internet Explorer?