jquery动画滚动无法在iframe中工作?

时间:2012-01-02 16:00:39

标签: jquery facebook iframe jquery-animate

这是有效的:

$('html, body').animate({scrollTop:0});

但如果我在Facebook-Tab中使用它,那就不行了! 如果这个信息太少而无法回答问题,我会为您提供更多详细信息。

可能是因为iframe吗?我在Facebook-Tab(容器div)中使用另一个选择器尝试了它,但它也没有用。

2 个答案:

答案 0 :(得分:4)

问题是IFrame(Javascript:window)正好是文档的大小。所以没有什么可以滚动的。如果要滚动,必须使用FB.Canvas。*方法:

https://developers.facebook.com/docs/reference/javascript/FB.Canvas.scrollTo/

答案 1 :(得分:0)

尝试$('body').animate({scrollTop:0});或使用$('#some_div_id').animate({scrollTop:0});

将DIV插入您的DOM

或者尝试使用此代码代替您的代码进行测试,一旦您获得以下代码,然后慢慢添加您自己的内容,直到它中断。我已经验证了scrollTop:0可以在页面选项卡上正常工作。

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
  function gotoTop() {
    $('body').animate({scrollTop:0});
  }
</script>
</head>
<body>
  <div id="top-div" style="width:300px; height: 800px; padding: 30px 10px; background-color: #eeaaaa;">
    This is top-div
  </div>

  <div id="bottom-div" style="width:300px; height: 100px; padding: 30px 10px; background-color: #aaeeaa;">
    This is bottom div
    <a href="javascript:gotoTop()">goto top</a>
  </div>

</body>
</html>