弹出层之2: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
总结:上面的文字个人认为写的比较烂,但基本的使用没有问题,详尽的支持是官网:http://www.malsup.com/jquery/block/,这个站还有一些其它插件也值得看看。
弹出层之2:JQuery.BlockUI的更多相关文章
- 经典弹出层Colorbox - a jQuery lightbox
Colorbox - a jQuery lightbox A lightweight customizable lightbox plugin for jQuery Fork me on GitHub ...
- Layer组件多个iframe弹出层打开与关闭及参数传递
一.Layer简介 Layer是一款近年来备受青睐的web弹层组件,基于jquery,易用.实用,兼容包括IE6在内的所有主流浏览器,拥有丰富强大的可自定义的功能. Layer官网地址:http:// ...
- jquery.blockUI.2.31.js 弹出层项目介绍
{insert_scripts files='user.js'} <style type="text/css"> #float_login{border:1px sol ...
- Jquery 点击图片在弹出层显示大图
http://blog.csdn.net/wongwaidah/article/details/28432427(案例链接出处,本人只是转载收藏) <html> <head> ...
- jquery制作弹出层带遮罩效果,点击阴影部分层消失
jquery制作弹出层带遮罩效果,点击阴影部分层消失. 整体还是比较简单的. HTML代码很简单 <a href="#" class="big-link" ...
- jQuery弹出层插件popbox
都什么年代了,还自己写弹出层插件!是的,①自己写的自己好控制②可定制性高③兼容低版本IE 本插件有以下特性: 样式分离,可定制,纯净无图片 可自定义按钮及按钮的样式.点击事件 可指定选择器选择页面元素 ...
- [转]jquery Fancybox丰富的弹出层效果
本文转自:http://www.helloweba.com/view-blog-65.html Fancybox是一款优秀的jquery插件,它能够展示丰富的弹出层效果.前面我们有文章介绍了facyb ...
- jQuery弹出层始终垂直居中相对于屏幕或当前窗口
把弹出层的位置设为fixed,设置top:50%,然后获取当前元素的整体的高度height,用获取的高度height/2,设置margin-top:-height/2.即可把当前的弹出层始终垂直居中于 ...
- jquery 简单弹出层
预定义html代码:没有 所有代码通过js生成和移除. 预定义css .z-popup-overlay{ width:100%; min-height: 100%; height:800px; pos ...
随机推荐
- winform 如何加载Url图像(图像)
解决方法: 1pictureBox1.Image = Image.FromStream(System.Net.WebRequest.Create(http://www.baidu/new.gif ). ...
- transform做2d和3d变形(css动画一)
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 有段时间我是没理清transform.translate.transition和animation之间的关 ...
- docker 安装与学习
本文在CentsOS下安装Docker 1.安装前准备工作 系统要求: 在CentOS下需要64位的CentsOS 7 OS requirements To install Docker, you ...
- [LeetCode] Diameter of Binary Tree 二叉树的直径
Given a binary tree, you need to compute the length of the diameter of the tree. The diameter of a b ...
- python系列之 - 并发编程(进程池,线程池,协程)
需要注意一下不能无限的开进程,不能无限的开线程最常用的就是开进程池,开线程池.其中回调函数非常重要回调函数其实可以作为一种编程思想,谁好了谁就去掉 只要你用并发,就会有锁的问题,但是你不能一直去自己加 ...
- 医疗器械c#上位机开发指引教程
此教程面向的读者:对医疗器械上位机编程有兴趣,或者急需了解医疗器械(尿常规.血液分析.生化.心电.B超等医疗下位仪器)的编程流程.编程细节的程序员. 1.得到仪器协议 当我们需要与医疗器械等下位机数据 ...
- 机器学习技法:03 Kernel Support Vector Machine
Roadmap Kernel Trick Polynomial Kernel Gaussian Kernel Comparison of Kernels Summary
- [SDOI 2017]数字表格
Description 题库链接 记 \(f_i\) 为 \(fibonacci\) 数列的第 \(i\) 项. 求 \[\prod_{i=1}^n\prod_{j=1}^mf_{gcd(i,j)}\ ...
- [NOIp 2016]天天爱跑步
Description 小C同学认为跑步非常有趣,于是决定制作一款叫做<天天爱跑步>的游戏.<天天爱跑步>是一个养成类游戏,需要玩家每天按时上线,完成打卡任务. 这个游戏的地图 ...
- UOJ #30. 【CF Round #278】Tourists
Description Cyberland 有 n 座城市,编号从 1 到 n,有 m 条双向道路连接这些城市.第 j 条路连接城市 aj 和 bj.每天,都有成千上万的游客来到 Cyberland ...