JQuery.BlockUI,JQuery弹出层插件

JQuery.BlockUI是众多JQuery插件弹出层中的一个,它小巧(原版16k,压缩后10左右),容易使用, 功能齐全,支持Iframe,支持Modal,可定制性高也意味他默认谦虚的外表。

jQuery的BlockUI插件可以让你在使用AJAX时模拟同步行为,锁定浏览器(模式窗口)。当被激活时,它会防止用户活动的页面(或页面的一部分),直到它被禁用。 BlockUI添加元素的DOM,给它的外观和阻止用户交互行为。

1、首先引入插件

Java代码   收藏代码
  1. <script src="jquery.min.js" type="text/javascript"></script>  
  2. <script src="JQuery.BlockUI.min.2.39.js" type="text/javascript"></script>  

 

 2、调用

  

Java代码   收藏代码
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head><title></title>  
  4.     <script src="jquery.min.js" type="text/javascript"></script>  
  5.     <script src="JQuery.BlockUI.min.2.39.js" type="text/javascript"></script>  
  6.     <script type="text/javascript">  
  7.         $(function() {  
  8.             $('#Button1').click(function() {  
  9.                 //阻止页面的用户的活动  
  10.                 $.blockUI();  
  11.             });  
  12.             $('#Button2').click(function() {  
  13.                 //自定义信息内容  
  14.                 $.blockUI({ message: '<h3><img src="busy.gif" /> Just a moment...</h3>' });  
  15.             });  
  16.             $('#Button3').click(function() {  
  17.                 //自定义样式  
  18.                 $.blockUI({ css: { backgroundColor: '#f00', color: '#fff'} });  
  19.             });  
  20.             $('#Button4').click(function() {  
  21.                 //定义弹出的信息为页面的某一个元素  
  22.                 $.blockUI({ message: $('#domMessage') });  
  23.             });  
  24.             $('#btnClose').click(function() {  
  25.                 //关闭弹出层  
  26.                 $.unblockUI();  
  27.             });  
  28.             $('#Button5').click(function() {  
  29.                 //设置淡入,淡出,自动关闭时间  
  30.                 $.blockUI({ fadeIn: 700, fadeOut: 700, timeout: 2000 });  
  31.             });  
  32.             //简单的气泡提示  
  33.             $.growlUI('提示''删除成功!');  
  34.         });  
  35.     </script>  
  36. </head>  
  37. <body>  
  38.     <ol>  
  39.         <li>阻止页面的用户的活动,不会自动消失,请刷新: $.blockUI();  
  40.             <input id="Button1" type="button" value="测试" />  
  41.         </li>  
  42.         <li>自定义消息:  
  43.             <input id="Button2" type="button" value="测试" />  
  44.         </li>  
  45.         <li>自定义样式:  
  46.             <input id="Button3" type="button" value="测试" />  
  47.         </li>  
  48.         <li>弹出指定的元素,并关闭弹出层(该层可以为隐藏):  
  49.             <input id="Button4" type="button" value="测试" />  
  50.         </li>  
  51.         <li>设置淡入,淡出,自动关闭时间:  
  52.             <input id="Button5" type="button" value="测试" />  
  53.         </li>  
  54.     </ol>  
  55.     <div id="domMessage" style="text-align: center; width: 200px; height: 50px; border;  
  56.         1px solid #9cf; padding: 25px; display: none;">  
  57.         <h3>  
  58.             Message</h3>  
  59.         <input id="btnClose" type="button" value="关闭" />  
  60.     </div>  
  61. </body>  
  62. </html>  

3、样式修改

jQuery blockUI 提供的默认样式过于朴素, 可以在每一次调用blockUI() 函数时进行修改. 也一次直接修改库文件 jquery.blockUI.js, 修改$.blockUI.defaults 对象相关的代码:

Java代码   收藏代码
  1. 显示源码  
  2.   
  3. // 重写defaults对象中的属性  
  4.     $.blockUI.defaults = {   
  5.       
  6.     //弹出的信息  
  7.     message:  '<h1>Please wait...</h1>',   
  8.    
  9.     //定义消息框样式  
  10.     // $.blockUI.defaults.css = {};   
  11.   
  12.     //默认定义消息框样式Css样式  
  13.     css: {   
  14.         padding:        0,   
  15.         margin:         0,   
  16.         width:          '30%',   
  17.         top:            '40%',   
  18.         left:           '35%',   
  19.         textAlign:      'center',   
  20.         color:          '#000',   
  21.         border:         '3px solid #aaa',   
  22.         backgroundColor:'#fff',   
  23.         cursor:         'wait'   
  24.     },   
  25.    
  26.     // 遮罩样式  
  27.     overlayCSS:  {   
  28.         backgroundColor: '#000'//颜色  
  29.         opacity:         0.6 //透明度  
  30.     },   
  31.    
  32.     // 使用$.growlUI完成自动气泡时的样式   
  33.     growlCSS: {   
  34.         width:    '350px',   
  35.         top:      '10px',   
  36.         left:     '',   
  37.         right:    '10px',   
  38.         border:   'none',   
  39.         padding:  '5px',   
  40.         opacity:   0.6,   
  41.         cursor:    null,   
  42.         color:    '#fff',   
  43.         backgroundColor: '#000',   
  44.         '-webkit-border-radius''10px',  //貌似是圆角  
  45.         '-moz-border-radius':    '10px'   
  46.     },   
  47.    
  48.     // 是否在非IE浏览器中使IFrame获得焦点,未验证的  
  49.     forceIframe: false,   
  50.    
  51.     // 遮罩层的Z-Index值,越大越在上面  
  52.     baseZ: 1000,   
  53.    
  54.     // 是否居中  
  55.     centerX: true,   
  56.     centerY: true,   
  57.    
  58.     //是否允许拉大   
  59.     //短的网页上。禁用如果你想防止车身高度的变化  
  60.     allowBodyStretch: true,   
  61.    
  62.    //遮罩时是否禁用键盘和鼠标事件  
  63.     bindEvents: true,   
  64.    
  65.     // be default blockUI will supress tab navigation from leaving blocking content   
  66.     // (if bindEvents is true)   
  67.     //遮罩内容的Tab导航是否可用  
  68.     constrainTabKey: true,   
  69.    
  70.     //淡入时间  
  71.     fadeIn:  200,   
  72.    
  73.        //淡出时间  
  74.     fadeOut:  400,   
  75.    
  76.     // time in millis to wait before auto-unblocking; set to 0 to disable auto-unblock   
  77.     //自动淡出时间  
  78.     timeout: 0,   
  79.    
  80.     //disable if you don't want to show the overlay   
  81.     //是否自动遮罩  
  82.     showOverlay: true,   
  83.    
  84.     // if true, focus will be placed in the first available input field when   
  85.     // page blocking   
  86.     //自动获得焦点  
  87.     focusInput: true,   
  88.    
  89.     //抑制FF/Linux的叠加样式的使用(由于具有不透明的性能问题)  
  90.     applyPlatformOpacityRules:true,  
  91.    
  92.     //调用解封已完成时回调方法;  
  93.     // onUnblock(element, options)   
  94.     onUnblock: null  

 

--------------------------------------------------------

正式使用示例:

Java代码   收藏代码
  1. function next(){  
  2.   
  3.     if($("#formId").valid()){  
  4.             //$("#xiayibu").attr('disabled',true);//下一步按钮不可用  
  5.             $.blockUI({ message: '<img height="32" width="32" src="${ctx}/images/wait.gif"/>&nbsp;&nbsp;正在提交...'});  
  6.         }  
  7.         $("#formId").submit();  

你可能感兴趣的:(js,jquery,blockUI)