- 浏览: 312941 次
- 性别:
- 来自: 上海
-
文章分类
最新评论
-
di1984HIT:
不错,不错。
Jquery.LazyLoad.js插件修正版下载,实现图片延迟加载特效 -
fncj:
好东西,
freemarker常用技巧 -
xwy55555:
说得很清楚
大型网站框架的演变 -
gxz1989611:
这个东西好,我转载了~~
40 个轻量级 JavaScript 库 -
gxz1989611:
恩,这个标题真是考虑到了SEO啊!!!
这才是真正的JQuery.ajax传递中文参数的解决方法
JQuery Block UI V2
概述
The jQuery BlockUI 插件是用于进行AJAX 操作时模拟同步传输时锁定浏览器操作[1] 。当它被激活时,它会阻止使用者与页面(或页面的一部分)进行交互,直至它被取消。 BlockUI以在DOM 中添加元素的方法来实现阻止用户与浏览器交互的外观和行为。
在翻译过程中,本人进行了测试。目前V2版本不能用于IE8测试版。
这个插件的用法很简单。阻止用户与页面交互:
$.blockUI();
自定义提示信息:
$.blockUI({ message: '<h1><img src="busy.gif" /> Just a moment...</h1>' });
自定义显示样式:
$.blockUI({ css: { backgroundColor: '#f00', color: '#fff'} });
解除对页面的锁定:
$.unblockUI();
如果要使用默认设置来同步所有的AJAX请求动作,代码如下:
$().ajaxStart($.blockUI).ajaxStop($.unblockUI);
[1] 以同步传输的方式来使用XMLHttpRequest
对象会在请求结束前阻止用户与浏览器的交互,直到请求结束。通常情况下,这不是一种好的用户体验。
锁定页面的例子
下面显示了几种锁定页面的方法。每个按钮都会激活blockUI并进行一次远程通信。
页面代码如下:
<script type="text/javascript">
// unblock when ajax activity stops
$().ajaxStop($.unblockUI);
function test() {
$.ajax({ url: 'wait.php', cache: false });
}
$(document).ready(function() {
$('#pageDemo1').click(function() {
$.blockUI();
test();
});
$('#pageDemo2').click(function() {
$.blockUI({ message: '<h1><img src="busy.gif" /> 请稍后...</h1>' });
test();
});
$('#pageDemo3').click(function() {
$.blockUI({ css: { backgroundColor: '#f00', color: '#fff' } });
test();
});
$('#pageDemo4').click(function() {
$.blockUI({ message: $('#domMessage') });
test();
});
});
</script>
...
<div id="domMessage" style="display:none;">
<h1>正在处理,请稍侯...</h1>
</div>
正在处理,请稍侯...
锁定元素的例子
这里展示了如何锁定页面中的元素,而不是整个页面。 请点击block/unblock按钮查看效果。
Option 1
Option 2
lorem ipsum dolor sit amet
consectetuer adipiscing elit
sed lorem leo
lorem leo consectetuer adipiscing elit
sed lorem leo
rhoncus sit amet
Option 1
Option 2
lorem ipsum dolor sit amet
consectetuer adipiscing elit
sed lorem leo
测试链接 - 请点击!
<!-- google广告开始--><script type="text/javascript"><!--
google_ad_client = "pub-0545040803774316";
/* 468x60, 创建于 08-6-5 */
google_ad_slot = "9087368421";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script><script style="display: none;" src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript">
</script><!-- google广告结束-->
这段文字不会被锁定。 测试链接 - 请点击!
下面是这个页面的代码:
<script type="text/javascript">
$(function() {
$('#blockButton').click(function() {
$('div.test').block({ message: null });
});
$('#blockButton2').click(function() {
$('div.test').block({
message: '<h1>处理中...</h1>',
css: { border: '3px solid #a00' }
});
});
$('#unblockButton').click(function() {
$('div.test').unblock();
});
$('a.test').click(function() {
alert('link clicked');
return false;
});
});
</script>
简单的对话框示例
此页展示了如何显示一个简单的模拟对话框。以下按钮将激活blockUI
显示一段自定义信息。这个AJAX请求将根据用户的反应(是或否)来发送或取消,在用户决定的这段时间内,会一直保持页面的锁定状态。
下面是这个页面的代码:
<script type="text/javascript">
$(function() {
$('#test').click(function() {
$.blockUI({ message: $('#question'), css: { width: '275px' } });
});
$('#yes').click(function() {
// update the block message
$.blockUI({ message: "<h1>正在进行通信...</h1>" });
$.ajax({
url: 'wait.php',
cache: false,
complete: function() {
// unblock when remote call returns
$.unblockUI();
}
});
});
$('#no').click($.unblockUI);
});
</script>
...
<input id="test" type="submit" value="显示对话框" />
...
<div id="question" style="display:none; cursor: default">
<h1>你确信要继续么?.</h1>
<input type="button" id="确认" value="Yes" />
<input type="button" id="取消" value="No" />
</div>
全功能的模拟对话框支持请访问 jqModal Plugin ,作者是Brice Burgess。
你确信要继续么?
选项
BlockUI的默认选项设置如下:
// 可以使用以下代码来自定义行为和样式
$.blockUI.defaults = {
//锁定时显示的提示信息(无提示信息时设置为null)
message: '<h1>Please wait...</h1>',
// 可以用CSS来格式化锁定时显示的信息
// 如果你希望使用一个外部样式表,请使用一下代码
// $.blockUI.defaults.css = {};
css: {
padding: 0,
margin: 0,
width: '30%',
top: '40%',
left: '35%',
textAlign: 'center',
color: '#000',
border: '3px solid #aaa',
backgroundColor:'#fff'
},
// 设置遮罩层的样式
overlayCSS: {
backgroundColor:'#000',
opacity: '0.6'
},
// 允许在ie6中缩放body元素。这会使较短的页面看上去好一些
// 如果你不想body元素的高度被改变,请设置为disable
allowBodyStretch: true,
// 默认情况下blockUI会禁止tab导航
constrainTabKey: true,
// fadeOut时间单位为毫秒。设为0的话,在解除锁定时不使用fadeout效果。
fadeOut: 400,
// 禁止在FF/Linux上使用遮罩层样式(由于透明度的性能问题)
applyPlatformOpacityRules: 1
};
改变blockUI的设置非常简单,有2种方式:
- 1、全局设置, 通过直接指定
$.blockUI.defaults
对象的值来设置。 - 2、局部设置, 将options对象放到
blockUI
(或block
) 函数内部。
全局设置
你可以通过直接的赋值来改变默认的选项。例如:
// 改变提示信息的边框
$.blockUI.defaults.css.border = '5px solid red';
// 缩短fadeOut效果的时间
$.blockUI.defaults.fadeOut = 200;
局部设置
局部设置是将options对象放到 blockUI
(或 block
) 函数内部。这会强制使用局部设置来代替全局设置的值。例如:
// 改变提示信息的边框
$.blockUI({ css: { border = '5px solid red'} });
...
// 缩短fadeOut效果的时间
$.blockUI({ fadeOut: 200 });
...
// 使用一个不同的提示信息
$.blockUI({ message: 'Hold on!' });
常见问题
- 解除锁定的时候,用于提示信息的元素不会从DOM中移除
- 默认的遮罩层为黑色
- 可用的选项设置进行了统一和清理
- 设置插件选项的方法改变了
- 放弃了对Opera 8的支持
- 提高了源代码的可读性
- 移除了
displayBox
功能 (其他 plugins 会做的更好)
$.blockUI.defaults.message
中。你可以以一个新的值来替换它,例如:
$.blockUI.defaults.message = "Please be patient...";
$.blockUI.defaults.overlayCSS
中。
你可以指定一个不同的颜色和透明度,例如
// 使用黄色遮罩层
$.blockUI.defaults.overlayCSS.backgroundColor = '#ff0';
// 使遮罩层更透明
$.blockUI.defaults.overlayCSS.opacity = '.2';
applyPlatformOpacityRules
值来启用透明度。
例如:
// 在FF/Linux下启用遮罩层透明
$.blockUI.defaults.applyPlatformOpacityRules = false;
下载
新版本的blockUI v2.00可以在这里得到: jquery.blockUI.js .
旧版本的blockUI仍然可以在这里得到:
http://jqueryjs.googlecode.com/svn/trunk/plugins/blockUI/jquery.blockUI.js
.
旧版本的文档在这里
.
支持
BlockUI插件的支持请访问 jQuery Google Group .
BlockUI插件和文档由Mike Alsup制作完成。 意见或建议请发送至 jquery @ malsup . com.
中文化: transping.com
<!-- google广告开始-->发表评论
-
Jquery使用技巧与规范
2012-04-28 15:35 19371. jquery 简介 ... -
电商类的验证正则表达式
2011-09-23 10:28 1360decmal:"^([+-]?)\\d*\\.\ ... -
收藏的js
2011-09-03 19:30 1008/** 收藏 */ fun ... -
Javascript刷新页面的几种方法
2011-08-11 11:00 1664Javascrip ... -
jquery 图片自动切换
2010-12-18 00:00 4485基于jQuery淡入淡出可自动切换的幻灯插件 Posted ... -
javaScript取url
2010-12-04 16:52 1209URL即:统一资源定位符 (Uniform Resource ... -
JQuery的强大筛选器
2010-12-04 13:57 1457在Web应用程序中,大部分的客户端操作都是基于对象的操作,要操 ... -
Sysdeo Eclipse Tomcat Launcher plugin 使用总结
2010-12-02 15:21 1954TomcatLauncher plugin 很轻量级,很喜 ... -
用jquery提交AJAX的中文乱码问题
2009-06-30 11:28 4990用jquery提交AJAX的中文乱码问题 ... -
这才是真正的JQuery.ajax传递中文参数的解决方法
2009-06-29 23:39 5442许多人在使用JQuery.ajax方法时肯定会遇到一个问题。在 ... -
70个新鲜实用的JavaScript和Ajax技术
2009-03-17 11:45 353970个新鲜实用的JavaScript和Ajax技术(上) ... -
常用正则表达式(验证版)收藏
2009-03-06 17:21 1023<noscript></noscript ... -
js判断输入是否为正整数、浮点数等数字的函数
2009-03-05 00:48 12957js判断输入是否为正整数、浮点数等数字 ... -
Jquery提交表单 Form.js官方插件介绍
2009-01-17 18:43 37262007-09-27 22:48 [JQuery框架应用 ... -
jQuery使用手册(七)
2008-11-24 14:02 1290七 :Ajax支持 通用方式: $.ajax( ... -
jQuery使用手册(六)
2008-11-24 14:01 1218六 :事件处理 hover(Function, ... -
jQuery使用手册(五)
2008-11-24 14:00 1328五 :动态效果 在将这部分之前我们 ... -
jQuery使用手册(四)
2008-11-24 13:52 998四 :JavaScript处理 $.browser( ... -
jQuery使用手册(三)
2008-11-24 13:49 1875get() get(num) 说明:获取匹配元素,get ... -
jQuery使用手册(二)
2008-09-27 10:48 1265一:核心部分 $(expr) 说明:该函数可 ...
相关推荐
《jQuery UI:深入理解与应用》 jQuery UI是基于JavaScript库jQuery的一个扩展,它提供了一系列丰富的用户界面组件,包括但不限于对话框(Dialogs)、日期选择器(Datepickers)、拖放功能(Drag and Drop)、排序...
**jQuery UI** 是一个强大的JavaScript库,用于构建用户界面,它基于流行的jQuery库。这个压缩包包含两个关键文件:`jquery-ui-1.8.16.custom.min.js` 和 `jquery-ui-1.8.16.custom.css`,这些都是jQuery UI的特定...
《jQuery UI 1.8.x 自定义版本详解》 在Web开发领域,jQuery UI是一个广泛使用的库,它基于流行的JavaScript库jQuery,提供了丰富的用户界面组件和交互效果。本篇文章将详细探讨两个特定版本的jQuery UI——1.8.2....
jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-ui-1.8.16jquery-...
《jQuery UI与jQuery插件深度解析——以jquery-ui-1.8.2.custom.min.js为例》 在Web开发领域,jQuery库以其简洁易用的API和强大的功能深受开发者喜爱。而jQuery UI作为jQuery的一个扩展,提供了丰富的用户界面组件...
《jQuery UI:深入理解与应用》 jQuery UI是基于JavaScript库jQuery的一款强大的用户界面插件集,它提供了丰富的交互效果、可自定义的主题以及多种可重用的UI小部件。在本文中,我们将深入探讨jQuery UI的核心功能...
在标题"jquery-ui-1.12.1.custom_jqueryui_"中,"custom"一词暗示了这是一个自定义版本,意味着开发者可能根据需求选择了特定的组件和主题,以优化项目中的性能和功能。 描述中的"jquery ui 1.12.1 for html"进一步...
《jQuery UI 1.10.2 自定义版本详解》 jQuery UI 是一款基于 jQuery JavaScript 库的强大且灵活的用户界面库,它提供了一系列预先设计的组件,用于创建丰富的交互式网页应用。在这个主题中,我们将深入探讨的是 `...
《jQuery UI与jQuery UI Rails整合应用详解》 在Web开发领域,jQuery UI和Rails框架的结合使用能够构建出功能丰富、交互性强的用户界面。本文将深入探讨如何将这两个强大的工具集结合,以提升Web应用的用户体验。 ...
《jQuery UI 1.8.18 自定义插件与CSS详解》 jQuery UI 是一个基于 jQuery 库的用户界面库,它提供了丰富的交互效果、可定制的主题以及各种UI组件,如日期选择器、对话框、滑块等。在本篇文章中,我们将深入探讨其...
**jQuery UI插件详解** jQuery UI是一个基于JavaScript的开源库,它是jQuery库的扩展,提供了丰富的用户界面组件和交互效果。这个插件以其强大的功能、易于使用的API和可定制的主题而受到开发者的广泛欢迎。在本文...
jquery-ui-日期框扩展成时间框 jquery-ui时间框 基于别人的代码进行修改 jquery-ui-1.8.16.custom.css文件末尾加入以下代码 .ui-timepicker-div .ui-widget-header{ margin-bottom: 8px; } .ui-timepicker-div dl{ ...
jquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-uijquery-ui
${ctx}/plugins/jquery-ui-1.11.2/jquery-ui.css" > ${ctx}/plugins/jquery-ui-1.11.2/external/jquery/jquery.js"> ${ctx}/plugins/jquery-ui-1.11.2/jquery-ui.js"> ${ctx}/plugins/jquery-ui-1.11.2/jquery-ui-...
`jQuery UI 1.7.3 Custom` 是一个流行的前端框架,主要用于构建交互式用户界面。这个完整开发包包含了创建高效、美观且响应式的网页应用所需的所有组件和资源。在这个压缩包中,我们可以找到以下几个关键部分,它们...
《jQuery UI 1.9.2自定义最小化版本详解》 jQuery UI 是一个基于 jQuery 的强大用户界面库,它提供了丰富的交互效果、可自定义的主题以及多种可重用的UI组件。在我们讨论的文件 "jquery-ui-1.9.2.custom.min.js" 中...
《jQuery UI 1.8.6:打造交互式网页的强大工具》 jQuery UI 是一个基于 jQuery JavaScript 库的用户界面插件集合,它为开发者提供了丰富的功能和华丽的样式,帮助构建具有高度交互性的网页应用。这个版本,即 ...
**jQuery UI 深度解析** jQuery UI 是一个基于广泛使用的 JavaScript 库 jQuery 的扩展,它为开发者提供了丰富的用户界面组件和交互效果。这个名为 "jquery-ui-1.10.4.custom" 的压缩包文件,很显然是一个自定义...
《jQuery UI 1.10.4:深入理解与应用》 jQuery UI 是一个基于 jQuery JavaScript 库的强大用户界面库,提供了丰富的交互效果、可定制的主题以及多种可重用的组件。在本篇文章中,我们将深入探讨jQuery UI 1.10.4...
jquery-ui.css