有没有办法告诉$ .blockUI();已被调用,但$ .unblockUI()尚未被调用?理想情况下,这应该能够阻止整页和特定元素。
我希望它可以像这样工作
> $.blockUI();
> $.isBlockUI?():
>> true
> $.unblockUI();
> $.isBlockUI?();
>> false
答案 0 :(得分:27)
var data = $('#element').data();
//will return Object like: { blockUI.isBlocked=1, blockUI.onUnblock=null}
if (data["blockUI.isBlocked"] == 1)
// is blocked
else
// is not blocked
答案 1 :(得分:9)
看看我找到的here
$(document).ready(function() {
$('#demo14').click(function() {
$.blockUI({
fadeIn: 1000,
timeout: 2000,
onBlock: function() {
alert('Page is now blocked; fadeIn complete');
}
});
});
显然,Block和unBlock sorta就像onSuccess函数一样。因此,在onBlock函数上,您只需设置一个全局布尔值。
希望这有帮助!
快乐的编码! ;)
答案 2 :(得分:5)
我使用更原始的黑客攻击:
var isUIBlocked = $('.ui-widget-overlay:visible').length > 0;
if(isUIBlocked){
// something is displayed with an active overlay, hence stop
}
即使将.dialog()
与modal:true