【问题标题】:jQuery UI overlay without dialog [duplicate]没有对话框的jQuery UI覆盖[重复]
【发布时间】:2012-12-09 05:31:50
【问题描述】:

可能重复:
jQuery UI: How to use ui-widget-overlay by itself?

我想避免用户在 ajax 调用期间更改屏幕。所以我想使用 jQuery UI 覆盖(模态对话框的覆盖)但没有任何对话框。我找不到任何方法来做到这一点。

有没有办法在没有对话框的情况下显示模式?

【问题讨论】:

  • “没有对话”是什么意思?你的意思是没有对话框标题?
  • 不,没有任何东西。只有叠加层。
  • 这是一个类似的问题,答案是:stackoverflow.com/questions/3782944/…

标签: jquery jquery-ui overlay jquery-ui-dialog


【解决方案1】:

我接受this answer 的另一个 SO 问题。

Here there is a fiddle.

还有代码:

$("body").append($.ui.dialog.overlay.create())

【讨论】:

  • 不错的把戏,如果有这么简单的东西,但可以只覆盖一个 div,那就太好了。
  • 不适用于 jquery >= 1.10
【解决方案2】:

modal选项设置为true的对话框添加如下div,其中width和height代表浏览器窗口的可视区域:

<div class="ui-widget-overlay" style="width: 607px; height: 350px; z-index: 1001;"></div>

你可以在你的页面上尝试类似的东西。请参阅http://jqueryui.com/dialog/#modal,然后在演示 iframe 上查看源代码以获取完整源代码。

【讨论】:

  • 这就是我要找的,但由于跨浏览问题,我不想自己计算宽度和高度。
【解决方案3】:

https://github.com/jquery/jquery-ui/blob/master/ui/jquery.ui.dialog.js

他们的代码显示他们在小部件上调用了_createOverlay()_destroyOverlay()。您可以尝试创建一个对话框并使用autoOpen:false 对其进行初始化,然后手动调用这些方法。

【讨论】:

  • 调用这些方法的代码是什么样的。像这样的东西: $("#myDialg").dialog._createOverlay() ?不知道如何正确调用它们...
  • 链接断开。请在此处添加代码而不是链接。
猜你喜欢
  • 1970-01-01
  • 2018-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多