Javascript Jquery iframe跨域动态高度

Javascript Jquery iframe跨域动态高度,javascript,jquery,iframe,dynamic,height,Javascript,Jquery,Iframe,Dynamic,Height,如果jquery没有庞大的插件,这是否可能实现 我知道有很多插件和替代品,我正在寻找最短、最健壮和最干净的(最好依靠jquery) 在这里,您可以尝试一下您的想法: 我不得不说“这是不可能的”,因为父页面无法获得第三方页面的高度,因为它来自与父页面不同的域 编辑:如果您对第三方页面有一定的控制权,则可以执行此操作 我个人只会使用他们已经实现的方法,它不需要jQuery,您只需要包含 在这一点上,您所需要的只是父页面上的一个方法,该方法在哈希更改时侦听,并相应地调整iframe的大小,您链接的站点

如果jquery没有庞大的插件,这是否可能实现

我知道有很多插件和替代品,我正在寻找最短、最健壮和最干净的(最好依靠jquery)

在这里,您可以尝试一下您的想法: 我不得不说“这是不可能的”,因为父页面无法获得第三方页面的高度,因为它来自与父页面不同的域

编辑:如果您对第三方页面有一定的控制权,则可以执行此操作

我个人只会使用他们已经实现的方法,它不需要jQuery,您只需要包含


在这一点上,您所需要的只是父页面上的一个方法,该方法在哈希更改时侦听,并相应地调整iframe的大小,您链接的站点也已经编写了iframe。它已经是一个非常干净的解决方案了,不需要修改它。你可以找到它。

这个小图书馆可以做你想做的事。它使用
postMessage
在iFrame和父对象之间进行对话,因此可以跨域工作。它还使用
MutationObserver
EventListeners
来检测内容的更改,并保持iFrame的大小正确


你所说的动态高度是什么意思?像窗口一样调整大小,或者具体是什么?由于父页面无法访问iframe中的内容(它来自不同的域),父页面无法确定iframe内容的高度。我想让iframe复制第三方页面的高度。是,但是,如何才能获得第三方页面的高度呢?父页面无法访问该信息。下面是一个工作示例:正如我所说的,可能有多个示例。我在寻找最小的“笨重的一个”例子:见我上面的评论。该站点使用第三方站点上包含的脚本,这意味着您必须控制第三方站点。如果是这种情况,那么是的,这是可能的,您只需向window.top.location添加一个哈希,并在父页面上侦听哈希更改。如果是这样的话,我可以提供一些非常简单的代码来实现它。它需要window.resize的事件处理程序,这在没有jQuery的情况下应该是可能的。父页面只需要侦听hashChange事件(并在不支持该事件的浏览器中实现一种方法来执行相同操作),并在hash更改为预定值时调整iframe的大小。我不这么认为,因为滚动条是您无权访问的窗口的一部分。如果它属于不同的域,这将抛出一个
同源
和/或
访问被拒绝
错误。