【问题标题】:Scrolling to the top of a new opened page inside an iframe滚动到 iframe 内新打开页面的顶部
【发布时间】:2011-12-08 07:43:17
【问题描述】:

我有一个在 iframe 中运行的 facebook 应用程序。问题是,如果我有一个较小的浏览器窗口,我滚动到应用程序的页面列表底部并选择一个新页面,它也会在底部的 iframe 中打开。

我尝试在链接中添加#top,链接到新页面内的name="#top" 元素,但这不适用于Firefox(已验证)和IE(尚未验证)。 对于 Firefox,我知道这是一个已知问题,并且有一些解决方法可以使“滚动到顶部”链接工作,但我还没有找到任何解决方案来解决如何在 iframe 中打开新链接并使其滚动。

我在 iframe 的 body 元素中添加了 onload="location.href='#'",但仍然没有成功。 无论我尝试什么,它似乎都被 Firefox 忽略了。

你们之前有没有遇到过这个问题?如果是这样,请您提供一些建议吗?

谢谢

【问题讨论】:

    标签: javascript jquery facebook iframe scroll


    【解决方案1】:

    您可以尝试使用http://api.jquery.com/scrollTop/ 的“丑陋”解决方法

    作为一名 Facebook 开发人员,我很好奇。如何在运行时调整 app-iFrame 的大小?我有一些基于 ajax 的应用程序,每次调用 ajax 后我都会调整窗口大小,从而消除了这个问题。

    可能值得一看。

    【讨论】:

    • 我使用标准的 Facebook 调整大小、FB.Canvas.setAutoResize(),以及一些小的变通方法。我不使用 ajax(在某种程度上),但我确实广泛使用了 jQuery。我会尝试看看您的建议是否有效,谢谢您的提示
    • 不幸的是,它不起作用,以及我尝试的许多其他解决方案:onload="window.parent.scroll(0,0);", document.getElementById("someTopDivId")。 scrollIntoView();, $(window/html/body).scrollTop(0);... Facebook iframe 组合似乎没有任何效果:(
    【解决方案2】:

    回答我自己的问题感觉很奇怪,但希望这对其他人有所帮助。 最后,对我有用的是 Facebook 的 scrollTo 功能:http://developers.facebook.com/docs/reference/javascript/FB.Canvas.scrollTo/

    我仍然不知道它是否适用于 IE,因为我还没有测试过,但在 Firefox 上一切正常

    【讨论】:

      猜你喜欢
      • 2014-10-30
      • 1970-01-01
      • 2017-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多