jquery 弹出层之JQuery.BlockUI插件

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

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

1、首先引入插件

    <script src="jquery.min.js" type="text/javascript"></script>
    <script src="JQuery.BlockUI.min.2.39.js" type="text/javascript"></script>
2、调用

 

 

 代码如下 复制代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title></title>
    <script src="jquery.min.js" type="text/javascript"></script>
    <script src="JQuery.BlockUI.min.2.39.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function() {
            $('#Button1').click(function() {
                //阻止页面的用户的活动
                $.blockUI();
            });
            $('#Button2').click(function() {
                //自定义信息内容
                $.blockUI({ message: '<h3><img src="busy.gif" /> Just a moment...</h3>' });
            });
            $('#Button3').click(function() {
                //自定义样式
                $.blockUI({ css: { backgroundColor: '#f00', color: '#fff'} });
            });
            $('#Button4').click(function() {
                //定义弹出的信息为页面的某一个元素
                $.blockUI({ message: $('#domMessage') });
            });
            $('#btnClose').click(function() {
                //关闭弹出层
                $.unblockUI();
            });
            $('#Button5').click(function() {
                //设置淡入,淡出,自动关闭时间
                $.blockUI({ fadeIn: 700, fadeOut: 700, timeout: 2000 });
            });
            //简单的气泡提示
            $.growlUI('提示', '删除成功!');
        });
    </script>
</head>
<body>
    <ol>
        <li>阻止页面的用户的活动,不会自动消失,请刷新: $.blockUI();
            <input id="Button1" type="button" value="测试" />
        </li>
        <li>自定义消息:
            <input id="Button2" type="button" value="测试" />
        </li>
        <li>自定义样式:
            <input id="Button3" type="button" value="测试" />
        </li>
        <li>弹出指定的元素,并关闭弹出层(该层可以为隐藏):
            <input id="Button4" type="button" value="测试" />
        </li>
        <li>设置淡入,淡出,自动关闭时间:
            <input id="Button5" type="button" value="测试" />
        </li>
    </ol>
    <div id="domMessage" style="text-align: center; width: 200px; height: 50px; border;
        1px solid #9cf; padding: 25px; display: none;">
        <h3>
            Message</h3>
        <input id="btnClose" type="button" value="关闭" />
    </div>
</body>
</html>
 

3、样式修改

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

 

 代码如下 复制代码

显示源码
// 重写defaults对象中的属性
    $.blockUI.defaults = {
   
    //弹出的信息
    message:  '<h1>Please wait...</h1>',
 
    //定义消息框样式
    // $.blockUI.defaults.css = {};

    //默认定义消息框样式Css样式
    css: {
        padding:        0,
        margin:         0,
        width:          '30%',
        top:            '40%',
        left:           '35%',
        textAlign:      'center',
        color:          '#000',
        border:         '3px solid #aaa',
        backgroundColor:'#fff',
        cursor:         'wait'
    },
 
    // 遮罩样式
    overlayCSS:  {
        backgroundColor: '#000', //颜色
        opacity:         0.6 //透明度
    },
 
    // 使用$.growlUI完成自动气泡时的样式
    growlCSS: {
        width:    '350px',
        top:      '10px',
        left:     '',
        right:    '10px',
        border:   'none',
        padding:  '5px',
        opacity:   0.6,
        cursor:    null,
        color:    '#fff',
        backgroundColor: '#000',
        '-webkit-border-radius': '10px',  //貌似是圆角
        '-moz-border-radius':    '10px'
    },
 
    // 是否在非IE浏览器中使IFrame获得焦点,未验证的
    forceIframe: false,
 
    // 遮罩层的Z-Index值,越大越在上面
    baseZ: 1000,
 
    // 是否居中
    centerX: true,
    centerY: true,
 
    //是否允许拉大
    //短的网页上。禁用如果你想防止车身高度的变化
    allowBodyStretch: true,
 
   //遮罩时是否禁用键盘和鼠标事件
    bindEvents: true,
 
    // be default blockUI will supress tab navigation from leaving blocking content
    // (if bindEvents is true)
    //遮罩内容的Tab导航是否可用
    constrainTabKey: true,
 
    //淡入时间
    fadeIn:  200,
 
       //淡出时间
    fadeOut:  400,
 
    // time in millis to wait before auto-unblocking; set to 0 to disable auto-unblock
    //自动淡出时间
    timeout: 0,
 
    //disable if you don't want to show the overlay
    //是否自动遮罩
    showOverlay: true,
 
    // if true, focus will be placed in the first available input field when
    // page blocking
    //自动获得焦点
    focusInput: true,
 
    //抑制FF/Linux的叠加样式的使用(由于具有不透明的性能问题)
    applyPlatformOpacityRules:true,
 
    //调用解封已完成时回调方法;
    // onUnblock(element, options)
    onUnblock: null
 

 

总结:上面的文字个人认为写的比较烂,但基本的使用没有问题,详尽的支持是官网:

时间: 2024-11-16 20:41:42

jquery 弹出层之JQuery.BlockUI插件的相关文章

jQuery弹出层插件Lightbox

  在使用discuzx中有一个Message以及Dialog方法来显示信息对话框.今天写项目的时候,需要一个信息对话框,所以就着手利用lightbox_me插件来写一个做备用. 网站开发过程中,为了增加网站交互效果,我们有时需要在当前页面弹出诸如登陆.注册.设置等窗口.而这些窗口就是层,弹出的窗口就是弹出层.jQuery中弹出层插件很多,但有些在html5+css3浏览器下,支持完美.而在例如ie8一下的浏览器下显示不出应有的效果.例如jquery.avgrund插件在ie8下就无法显示. 本

jQuery弹出层插件与使用方法

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-

jQuery 弹出层插件(推荐)_jquery

最近在研究弹出层插件时发现网上很多插件功能很强大,同时插件也很庞大.在这里个人写了一个比较秀珍的弹出层插件. jquery.popdialog.js $(function () { $.fn.PopDialog = function (options) { var defaults = { Event: "click", //触发响应事件 title: "title", //弹出层的标题 type: "text", //弹出层类型(text.容器

原创jQuery弹出层插件分享_jquery

依赖jquery,兼容IE6\7\8 火狐 chrom 等主流浏览器(绝对原创), 不过请求大神帮我提升点效率. /** * jQuery弹出层插件 * * @author lanhaoooo@163.com * @since 2014-08-23 */ (function($) { var methods = { o : { isIe : !-[ 1, ] || document.documentMode >= 9,//后面的是判断IE9.IE10的 ie6 : !-[ 1, ] &&am

jQuery弹出层插件Lightbox_me使用指南_jquery

网站开发过程中,为了增加网站交互效果,我们有时需要在当前页面弹出诸如登陆.注册.设置等窗口.而这些窗口就是层,弹出的窗口就是弹出层.jQuery中弹出层插件很多,但有些在html5+css3浏览器下,支持完美.而在例如ie8一下的浏览器下显示不出应有的效果.例如jquery.avgrund插件在ie8下就无法显示. 本文介绍的插件Lightbox_me可以完美的支持chrome,firefox和ie7,ie8,ie9等主流浏览器. 1.Lightbox_me插件功能 用于显示弹出层 2.Ligh

jquery 弹出层效果

本文章是从国外网站jquery 弹出层效果实例效果,方法很简单就是利用了jquery弹出层插件来实现弹出效果代码哦. 简介 在本教程中,我将分享如何创建一个简单的模式窗口使用jquery.我喜欢jquery的,它使一切都那么简单而且很容易.如果你不知道什么是模态窗口.您可以点击这里.这是一个模态窗口的例子. 在这个网站,我使用facebox(灵感来自facebook).如灯箱,thickbox的,multibox,litebox其他......它的太多了,他们都具有不同的特点. 对了,让我们开始

jQuery 弹出层 弹出对话框

jQuery 弹出层 弹出对话框 可以设置大小,ajax内容弹出,背景等各种调整 演示   XML/HTML Code                   <script> $(document).ready(function() { ClassyLightbox.init({ override:true, background: 'white', centerOnResize: true, fade: true }); $('#alert').click(function() { alert

jquery 弹出层ajax登陆实例代码

jquery 弹出层ajax登陆实例代码 jQuery(document).ready(function(){  jQuery('.login_show').click(function(){   var xmlhttp=createxmlhttp();   if(!xmlhttp)   {    alert("你的浏览器不支持XMLHTTP!!");    return;   }   var  Digital=new  Date();   Digital=Digital+40000;

Jquery弹出层插件Thickbox使用心得

前段时间在建设银行项目上用EXT完整做了个单页系统,太赶了,没有记录下任何东西, 现在都忘了,怪可惜的.这次项目用JQuery做js的东西.主要用了个弹出层控件thickbox, 自己也扩展和修改了一下.这里就记下来,也提供大家下载,希望对大家有用吧. thickbox官方网站(上面有例子和基本的使用方法): http://jquery.com/demo/thickbox/ 就我使用过程中,thickbox常见问题: 1 .跨iframe的弹出层. 症状:每次thickbox都只在frame中弹