我知道尝试滚动iframe本身并不是一种可行的方法,相反,我应该滚动div。问题是它不起作用。这段代码有什么问题?这是谷歌的事情吗?我使用自定义搜索,所以它显示在框架中,但我知道谷歌和框架不喜欢彼此玩。
HTML
<div id="googleframe"><iframe id="googleseo" src="http://www.google.com/custom?q=hey+there&btnG=Search"></iframe></div>JS
var seoFrame = document.getElementById('googleseo');
seoFrame.src = googleSearch;
seoFrame.onload = function () {
document.getElementById('googleframe').scrollTop = 300;
}
}发布于 2015-05-18 22:43:33
这是由于scrollTop引用了iframe,而不是框架内的主体。iframe本身没有滚动条,它是其中的文档。
it的小提琴工作http://jsfiddle.net/ebzxzgmo/
var seoFrame = document.getElementById('googleseo');
var elem = (seoFrame.contentDocument||seoFrame.contentWindow.document).documentElement;
elem.getElementsByTagName('body')[0].scrollTop = 300;注意,它正在请求jsfiddle。浏览器会阻止从其他域访问iframe的DOM。
发布于 2015-05-20 01:51:54
这是一个CSS问题。iframe不够长,无法滚动。它和我的div一样高,所以我把它加长了,它工作得很好。
https://stackoverflow.com/questions/30305591
复制相似问题