我正在使用BlockUI并且很喜欢它,但是需要注意的是,在Linux上的Firefox中它非常慢。它会将CPU占用率峰值提高到100%。
我经常使用jqModal,非常喜欢它。它易于实现和灵活,但其主要目的是模态对话框。
我没有使用过BlockUI,尽管它似乎提供了一些不同的功能。它不仅可以在模态窗口中显示内容,还可以防止用户访问整个UI或部分UI。
另一个选择是jQuery UI Dialog,它更通用,可以用来构建其他功能。我在一个应用程序中使用它,虽然它没有jqModal的开箱即用功能,但如果我想构建一个与之集成的自定义插件,它会非常有用。
我使用并喜欢两者。
对于简单的静态模态框,@Peter J的答案是正确的- BlockUI非常棒且非常轻量级。您可以将隐藏的div作为消息传递,并将其显示为模态对话框,可以通过jQuery绑定等方式进行交互。它不提供通过ajax检索消息的方法,除非手动编码(这与BlockUI的简单完美相反-在等待ajax操作完成时显示块消息)。
对于动态模态框,jqModal非常好,因为它可以通过ajax调用检索模态内容。它还可以为您处理触发元素(按钮、链接等),控制自己的显示/隐藏,但也提供了许多自定义选项。
要变得更加复杂-我甚至同时使用两者来显示通过jqModal提供的ajax对话框,然后在提交时通过BlockUI阻止它以显示自定义消息。(需要注意的一点是:请注意jqModal的默认z-index低于BlockUI的默认值,因此在一起使用时,需要将BlockUI basez选项设置得比jqModal的默认值3000高。)