为什么scrollTo()方法不适用于iframe?

时间:2015-08-31 00:10:32

标签: javascript html iframe scroll

无论我做什么,iframe都不会自动滚动到底部。我无法使用scrollTo()对iframe执行任何操作。我已经检查了Stack Overflow上的很多其他页面,处理类似的问题。他们的解决方案都没有对我有用。很可能我没有正确实现它们。

Scrolling an iframe with javascript? 上述帖子中给出的工作实例实际上并不适用于我。无论我输入到示例中的scrollTo()方法中的数字都没有变化。

<!DOCTYPE html>
<html>
<body>

<div id="divy">
<iframe id='cat' src='test.html'></iframe>
</div>
<script>
console.log(document.getElementById('cat'));
 document.getElementById("cat").onload = function () {     this.contentWindow.scrollTo(0, 200) }; 
conslole.log( document.getElementById("cat").onload = function () {     this.contentWindow.scrollTo(0, 200)) }; 
    //setInterval(function(){  document.getElementById("divy").innerHTML="    <iframe src='test.html'></iframe>"; }, 3000);
</script>
<body>
</html>

编辑:我仍然不知道为什么另一篇文章中的工作示例中的代码对我不起作用。有人在该帖子的评论中提到,它对他们来说也不起作用。

1 个答案:

答案 0 :(得分:1)

我的前两个问题是我不知道如何使用控制台日志,而且我有一个错字。但我相信我的主要问题是我从来没有输入足够大的价值来看滚动条移动,所以认为它不起作用。对于文件的大小我加载150像素太小了。下面的代码对我有用。

<!DOCTYPE html>
<html>
<body>

<div id="divy">
<iframe id='cat' src='test.html'></iframe>
</div>
<script>
console.log(document.getElementById('cat'));
 document.getElementById("cat").onload = function () {     this.contentWindow.scrollTo(0, 1000000) }; 

    //setInterval(function(){  document.getElementById("divy").innerHTML="    <iframe src='test.html'></iframe>"; }, 3000);
</script>
<body>
</html>