2012-08-29 23 views
0

我试图偷偷摸摸地写一个FB应用程序,在一个页面上的标签...该应用程序允许您粘贴一些HTML代码,然后显示它你的标签。FB.scrollTo()不能在我的FB选项卡上工作

然后粘贴一个iframe的html代码(我给出了一个特定的高度)。 iframe从Wordpress网站提取内容。但是由于一些页面比其他页面长,并且iframe设置为1400px以容纳所有页面内容而不出现滚动条,所以您必须手动向上滚动页面。

我用尽以下向应用代码的FB页面滚动到顶部...

<body style="overflow: hidden;"> 

    <!-- echo out iframe page code --> 

<div id="fb-root"></div> 
<script type="text/javascript"> 
window.fbAsyncInit = function() { 
    FB.init({ 
    appId: 123456789, 
    status: true, 
    cookie: true, 
    xfbml: true 
    }); 

    FB.Canvas.setAutoGrow(); 
    FB.Canvas.scrollTo(0,0); 
    }; 

    //Load the JavaScript SDK asynchronously 
    (function() { 
     var e = document.createElement('script'); e.async = true; 
     e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; 
     document.getElementById('fb-root').appendChild(e); 
    }()); 
</script> 

</body> 

但滚动至顶事心不是工作...任何输入赞赏!

刚才我发现FB.scrollTo可能正在工作,但是因为该应用程序文件没有被重新加载,当我在嵌入式iframe中导航时,它不会调用它...所以我需要触发FB .scrollTo何时加载新的iframe内容...?

回答

0

我想你想使用https://developers.facebook.com/docs/reference/javascript/FB.Canvas.scrollTo/(FB.Canvas.scrollTo)

然而,这个功能只有一个目的:滚动到某个位置上的画布应用(HTTPS://apps.facebook的.com/yourapp)。如果您手动插入iframe,它也不起作用。在画布应用中,您的应用会自动加载到iframe中。

此外,这只适用于如果您将画布高度设置为可设置。