考虑这种情况(请不要质疑其合理性):
我想在一个IFrame中安装Google,它只占网页宽度的一半和全高。相当简单地实现。但我想只有一个全局(用于窗口)滚动条。这就是问题所在......
我想要页面窗口,以扩展到IFrame的高度。
我怎么做?我现在甚至在努力争取IFrame的内容高度。当然,查询IFrame的高度不是这样做的方法,我需要查询它的内容。尝试$("iframe#google").contents().find('html').height()
,但不断获得null
。只有$("iframe#google#).contents()
isady会返回一个空对象
假设我以某种方式想出来(希望有你的帮助),我如何检测IFrame内容的高度变化?是否有可以将函数绑定到的事件,或者setTimeout
是丑陋的,但只是使其具有响应性的解决方案。
我想知道IFrame的网址何时更改(包括哈希网址)。
我怎样才能找到当前IFrame的网址?导航到其他位置时,src
属性似乎没有变化
再说一次,假设我已经找到了一个,是否有一个事件可以帮助我检测到这一点?如果主网址(没有哈希部分)发生变化,load
似乎确实可以完成工作。但是,如果我想检测哈希网址也会改变呢?
非常感谢您对这些的帮助。
修改
值得注意的是,谷歌既不能做到这一点,因为他们的跨域政策不允许这样做。如果IFrame来自同一个域,则第一篇文章中的脚本可以正常工作。
答案 0 :(得分:1)
$("#frameId").height($("#frameId").contents().find("html").height());
$('#frameId').contents().find("src").text();
或
var iframeurl = document.getElementById('frameId')。getAttribute('src')