Javascript 如何使用JQuery UI阻止UI?

Javascript 如何使用JQuery UI阻止UI?,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我一直在使用此插件阻止用户界面: 该插件工作得非常出色,只是如果jQueryUI没有做这样的事情,我会非常惊讶,因为它必须有效地为它的对话框功能做同样的事情 如何使用JQuery UI阻止UI?您可以做一些骇人的事情-调用模态,然后在onopen回调上,remove()模态本身 $("#something").dialog({ open: function(event, ui) { $('.ui-dialog').remove(); } }); 嘿!我说它很黑:) 或 检查模态代码,看看

我一直在使用此插件阻止用户界面:

该插件工作得非常出色,只是如果jQueryUI没有做这样的事情,我会非常惊讶,因为它必须有效地为它的对话框功能做同样的事情


如何使用JQuery UI阻止UI?

您可以做一些骇人的事情-调用模态,然后在
onopen
回调上,
remove()
模态本身

$("#something").dialog({
   open: function(event, ui) { $('.ui-dialog').remove(); }
});
嘿!我说它很黑:)

检查模态代码,看看它是否调用函数来阻止UI。也许您可以为它添加一个外部引用,这样您就可以自己调用它了

将此HTML添加到文档中,并在其上调用
show()
hide()

<div class="ui-widget-overlay" style="width: 100%; height: 100%; z-index: 32767;"></div>

或者(如果您不确定它们是如何制作的)

它们只是一个绝对定位的
div
(通常)和100%的
高度
/
宽度
,具有高
z指数
,通常是
不透明度
(请查看如何在IE6中使用过滤器)


您还可以将其设置为
位置:fixed
,以便在滚动时它始终在那里。如果您想隐藏滚动条,也可以通过执行
$('body').css({'overflow-y':'hidden'})
要“阻止”用户界面,您只需插入一个绝对定位的div,该div具有高z索引和所需的背景颜色和不透明度,以覆盖整个页面。

jQuery只有一个进度条。当然,你可以做以上所有的事情,但是如果你和你已经在使用的东西相比,它看起来太复杂了

我的建议是尝试改变

非常干净,有很多CSS选项。易于在任何项目上使用和实施。


<div id="__messageBox_wait" class="messageBoxArea" style="display: none; cursor: default">
                <div>
                    <label id="__messageBox_wait_text" style="vertical-align: middle">
                        Please wait</label>
                </div>
</div>

function blockUI() {
        var boxHtml = $('#__messageBox_wait');
        var message = "Please wait...";
        $('#__messageBox_wait_text').text(message);
        $.blockUI({
            theme: false,
            title: 'Message',
            message: boxHtml,
            css: 'width:15%'
        });
    }


    $.unblockUI(); -- call to Unblock UI
     blockUI();  --- call to block UI
请稍等 函数blockUI(){ var-boxHtml=$(“#uuu消息框_u等待”); var message=“请稍候…”; $('#uuu messageBox_wait_text')。text(message); $.blockUI({ 主题:假, 标题:“消息”, 信息:boxHtml, css:“宽度:15%” }); } $.unbui();--取消阻止用户界面的调用 blockUI();--对块UI的调用
我想他知道怎么做,但他能用jQuery UI做到吗?i、 不写自己的代码和CSS。只使用BlockUI插件有什么不对?“它很轻。”“阿拉斯泰尔:没什么——只是一个思维实验而已。”。这是一个很棒的插件,@BillyONeal我想你没有读到我的答案:“你已经在使用什么”就在你眼前。问题是“我一直在使用这个插件来阻止UI。我如何只使用jQuery UI组件(而不是这个插件)来实现这样的功能?”你的回答是这样的“试着使用这个插件,你在问题“我们在这里讨论英语语法还是编程?我认为仅仅因为你没有理解要点而投票否决是不礼貌的。我的回答是:”我的建议是尝试更改jQuery块UI请阅读所有答案,如果你不明白,就不要发表负面评论。这与我是否“明白”无关。这与我明确声明这不是我问题的有效答案有关。问题是“我知道库XYZ。如果没有库XYZ,我如何实现库XYZ的功能?”您的回答是“使用库XYZ”,这在问题中被明确禁止。