阻止UI直到页面完全加载:jquery、blockUI插件

阻止UI直到页面完全加载:jquery、blockUI插件,jquery,blockui,Jquery,Blockui,当页面仍在使用jquery和blockUI插件加载时,如何阻止UI?如果使用AJAX调用加载页面,我知道解决方法,但是当使用回发加载页面时,如何阻止ui,直到页面完全加载完毕 请帮忙。非常感谢您的努力和时间。您需要在body标签输出后立即启动blockUI插件 而不是传统的: <script type="text/javascript"> $(function (){ $("body").blockUI(options); }); </script> 您

当页面仍在使用jquery和blockUI插件加载时,如何阻止UI?如果使用AJAX调用加载页面,我知道解决方法,但是当使用回发加载页面时,如何阻止ui,直到页面完全加载完毕


请帮忙。非常感谢您的努力和时间。

您需要在body标签输出后立即启动blockUI插件

而不是传统的:

<script type="text/javascript">
  $(function (){
    $("body").blockUI(options);
  });
</script>

您可以尝试在禁用所有组件的情况下启动页面,然后在PageLoad事件中启用它们的组件。另一个想法是放置一个CSS类来隐藏所有页面,并使用JQuery在加载时对此进行更改。

问题在于引用javascript文件

如果需要在ASP.NET Ajax页面中添加块UI,请尝试在ScriptManager中包含javascript文件。

您尝试过吗

<script type="text/javascript">
    $(document).ready(function () {
        $.blockUI(options);
    });
</script>

$(文档).ready(函数(){
$.blockUI(选项);
});

基于并纠正Seb的答案。如果您正在阻止UI,请使用.blockUI(),如果目标是对象,请使用.block()。我不认为您需要以身体为目标,本质上这就是blockUI函数本身所做的。您确实需要在body标记之后调用函数。。。否则没有
标记。如果您确实希望在加载每个图像之前阻止UI,请参阅最后一行。如果您只想加载页面内容,可以将unblock函数放在您熟悉的
$(文档).ready(函数()。


$(“正文”).block(选项);
//--或者--
$.blockUI(选项);
$(文档).ready(函数(){
$(窗口).load(函数(){$.unbui();});//加载所有内容,包括图像。
//--或者--
$.unbui();//仅确保文档已满载,包括脚本。
});  

最终对我有效的完整代码如下:

$("body").block({ message: '<h2>Loading...</h2>' });

$(document).ready(function () {
     $("body").unblock();
});
$(“body”).block({message:'Loading…});
$(文档).ready(函数(){
$(“正文”).unblock();
});

是否要阻止所有用户界面,如整个页面,或仅阻止数据输入字段或其他控件。回发?这是错误/输入错误吗?如果回发,则不可能。Hey@Grant我想阻止表行。你能帮我吗?我正在尝试阻止表行,但我无法这样做,我的代码:$('#required tr').block({message:null});它阻止整个页面正确的方法是block(options)。这可以工作,但一旦页面被取消阻止,它就会阻止所有表单元素
<script type="text/javascript">  
$("body").block(options);   
//--or--  
$.blockUI(options);  
</script>

<script type="text/javascript">   
$(document).ready(function() {  
   $(window).load(function() { $.unblockUI(); }); //load everything including images.  
//--or--  
   $.unblockUI(); //only make sure the document is full loaded, including scripts.  
});  
</script>
$("body").block({ message: '<h2>Loading...</h2>' });

$(document).ready(function () {
     $("body").unblock();
});