【发布时间】:2013-04-11 17:55:46
【问题描述】:
我正在开发一个 sp2013 应用程序,这意味着它正在使用 iframe。具体来说,它是一个非常大的 iframe,占据了大部分屏幕。在很多时候,我正在打开 jquery ui 对话框窗口。它们设置为显示在视口的中间,这很好,只是它显示在 iframe 的中间,而不是可见屏幕的中间。
有没有办法让 jquery ui 查看 window.top 的滚动属性,而不是 iframe?
编辑:iframe 和父级在同一个域上,因此跨域问题不是问题。
【问题讨论】:
-
你能试着把它放在 iframe 中加载的页面的头部吗?
<base target="_parent" /> -
试试 jQuery postMessage 插件,这是一个跨框架的通信工具,你可以用它来传递变量和方法。 benalman.com/projects/jquery-postmessage-plugin
-
@Jules 这不会对 jQuery 对话框做任何事情。
-
@Mooseman 如果 jQuery UI 正确实现(大多数情况下),它可以查看页面基础并将其用作显示对话框的参考窗口。我自己不会费心尝试这个,但我真的认为值得一试
-
@Jules:这没有任何作用。
标签: javascript jquery jquery-ui iframe jquery-dialog