我遇到麻烦让JQuery blockUI工作。我正在使用此代码:
$.blockUI({
message : null,
overlayCSS : {
backgroundColor : '#000000;',
opacity : .4
}
});
如果我只是调用上面的内容然后调用下面的sleep函数,我会得到以下行为: 5秒钟没有任何事情发生 块闪烁
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > 5000) {
break;
}
}
如果我运行此代码:
alert("foo");
$.blockUI({
message : null,
overlayCSS : {
backgroundColor : '#000000;',
opacity : .4
}
});
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() - start) > 5000) {
break;
}
}
alert("bar");
我得到以下行为:
警报和阻止出现(我可以在清除警报之前无限期等待)
当我清除警报按钮时,5秒内没有任何事情发生
警报切换到“栏”消息
当我解除警报
答案 0 :(得分:0)
我最后搬了#34;睡觉&#34;与服务器交互的一部分,并在客户端上使用类似的东西:
<header>
<script language="javascript">
function blockExample() {
// block the ui
$.blockUI({
message : null,
overlayCSS : {
backgroundColor : '#00f'
}
});
// do the ajax call
$.ajax({
url : "${home}/action/wait/WaitAction?howLong=5000",
type : "get",
success : function(data) {
$.unblockUI();
},
error : function() {
alert("error");
}
});
}
</script>
</header>
<div align="center">
<a href="javascript:blockExample()">Click me to block this page for 5 seconds</a>
</div>