BlockUI完全指导手册

本文介绍了如何利用BlockUI插件在使用AJAX时实现屏幕全屏锁定,并显示自定义的提示信息。通过简单的$.blockUI()与$.unblockUI()方法,可以有效地控制用户在等待数据加载过程中的操作。文章详细解释了这两个方法的使用,包括参数设置如自定义消息、样式、动画效果等,以及如何同步所有AJAX请求的动作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

BlockUI让你可以在使用AJAX时,可以显示一个全屏的遮罩,从而阻止用户进行其他的操作。并显示提示信息。BlockUI主要使用blockUI和unblockUI的锁定和解锁屏幕。BlockUI允许你使用AJAX的方法锁定屏幕,而不需要锁定整个浏览器。

 

框架主页:http://malsup.com/jquery/block/

 

版本:V2

 

适用于jquery1.2.3以上的版本。

 

主要的两个入口函数:blockUI和unblockUI。

 

(1) blockUI方法的使用

 

使用方法非常简单,使用

 

$.blockUI();

 可以把屏幕锁住。

 

 通过参数的传递,你可以实现更多的锁定效果

 

$.blockUI(opts);

 

 

opts包括的自定义属性包括:

 

1. message属性:

 

使用message属性,我们可以自定义锁定屏幕时的信息。比如:

 

 

$.blockUI({ message: '<h1><img src="busy.gif" /> Just a moment...</h1>' });

  

此时锁定屏幕时,会显示一个图片和一个Just a moment的文字。

 

message可以是任意的HTML文本,也可以是Dom对象,也可以是jQuery对象。

 

2. css 属性

 

内容区域的样式

 

例如:

 

$.blockUI({ css: { backgroundColor: '#f00', color: '#fff'} });

  

这样显示的文字的背景为红色,颜色为白色。

 

css包括的属性有:

 

padding:间距

margin:空白

width:信息的宽度

top:顶部距离

left:左边距离

textAlign:文字对齐方式

color:字体颜色

border:边框的样式

backgroundColor:背景颜色

cursor:鼠标类型

 

3. overlayCSS   遮罩层的样式

 

可以自定义底部遮罩层的样式,包括:

 

backgroundColor:背景颜色

opacity:透明度

cursor:鼠标形式

 

4. fadeOut 消失时间

 

这个属性只有定义了自动消失才有效,遮罩消失的时间

 

5. fadeIn 显现动画效果的时间

 

为零时,没有动画效果

 

(2)unblockUI 取消屏幕锁定

 

使用

$.unblockUI();

 就可以把屏幕锁定取消了。 

 

使用:

 

$.unBlockUI(opt)

 可以自定义消失的效果

 

(3) 其他使用

 

如果要使用默认设置来同步所有的AJAX请求动作,代码如下:

$().ajaxStart($.blockUI).ajaxStop($.unblockUI);

 

制作者 1,乐清*梅雷 部分内容参考百度QQ:1821117007 一共大概花了15个小时翻译以及制作。 2,彭辅军,网名:小白鼠,QQ:3243729373 二次开发QQ群:331643674 在梅雷基础上增加了内容,一共大概花了20个小时翻译以及制作。 本帮助文档可复制,可传播,但需要保留制作者信息,谢谢! 其中大部分内容测试比对过,部分没有进行测试比对效果。请以实际效果为准。本文只做参考。 注:由于BlockUI更新比较频繁,各版本之间会存在差异,有些版本的控件的属性名并没有那么多,或者此帮助文件并没有列进去,那么可以通过下面方法查看当前版本某控件的所有的属性名和类型: void get_block_ui_type_name(NXOpen::BlockStyler::UIBlock* BLOCK_UI_name) { Session*theSession=NXOpen::Session::GetSession(); ListingWindow*lw=theSession->ListingWindow(); lw->Open(); NXOpen::BlockStyler::PropertyList::ListMode mode1 = BLOCK_UI_name->GetProperties()->Mode(); if (mode1==BlockStyler::PropertyList::ListModeIndexed) { lw->WriteLine("ListMode:ListModeIndexed"); } else { lw->WriteLine("ListMode:ListModeNamed"); } int length = BLOCK_UI_name->GetProperties()->Length(); char info[100]; sprintf(info,"数量:%d",length); lw->WriteLine(info); std::vectorarray_nxstr = BLOCK_UI_name->GetProperties()->GetPropertyNames(); for (int i=0;iWriteLine(); BlockStyler::PropertyList::PropertyType type = BLOCK_UI_name->GetProperties()->GetPropertyType(array_nxstr[i]); if(type==0) lw->WriteLine("类型是:String 名称:"+array_nxstr[i]); else if(type==1) lw->WriteLine("类型是:Double 名称:"+array_nxstr[i]); else if(type==2) lw->WriteLine("类型是:Logical 名称:"+array_nxstr[i]); else if(type==3) lw->WriteLine("类型是:Integer 名称:"+array_nxstr[i]); else if(type==4) lw->WriteLine("类型是:Enum 名称:"+array_nxstr[i]); else if(type==5) lw->WriteLine("类型是:Strings 名称:"+array_nxstr[i]); else if(type==6) lw->WriteLine("类型是:UIBlock 名称:"+array_nxstr[i]); else if(type==7) lw->WriteLine("类型是:Point 名称:"+array_nxstr[i]); else if(type==8) lw->WriteLine("类型是:Vector 名称:"+array_nxstr[i]); else if(type==9) lw->WriteLine("类型是:Bits 名称:"+array_nxstr[i]); else if(type==10) lw->WriteLine("类型是:Tagged Object 名称:"+array_nxstr[i]); else if(type==11) lw->WriteLine("类型是:Array 名称:"+array_nxstr[i]); else if(type==12) lw->WriteLine("类型是:Integer 2d-Matrix 名称:"+array_nxstr[i]); else if(type==13) lw->WriteLine("类型是:Double 2d-Matrix 名称:"+array_nxstr[i]); else if(type==14) lw->WriteLine("类型是:Tagged Object 2d-Matrix 名称:"+array_nxstr[i]); else if(type==15) lw->WriteLine("类型是:Integer Vector 名称:"+array_nxstr[i]); else if(type==16) lw->WriteLine("类型是:Double Vector 名称:"+array_nxstr[i]); else if(type==17) lw->WriteLine("类型是:Tagged Object Vector 名称:"+array_nxstr[i]); else if(type==18) lw->WriteLine("类型是:File 名称:"+array_nxstr[i]); else if(type==19) lw->WriteLine("类型是:Selection Filter 名称:"+array_nxstr[i]); else if(type==20) lw->WriteLine("类型是:Undefined 名称:"+array_nxstr[i]); } } //下面是几个示例:控件的值的获取 。。。。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值