爲什麼調用FB.Canvas.getPageInfo()的值返回全零?爲什麼FB.Canvas.getPageInfo()返回的值全部爲零
function scrollElementIntoView(elementTop, elementBottom) {
var pageInfo = FB.Canvas.getPageInfo();// 0 0 0 0
}
爲什麼調用FB.Canvas.getPageInfo()的值返回全零?爲什麼FB.Canvas.getPageInfo()返回的值全部爲零
function scrollElementIntoView(elementTop, elementBottom) {
var pageInfo = FB.Canvas.getPageInfo();// 0 0 0 0
}
FB.Canvas.getPageInfo()
將立即返回最後發現網頁信息,因此,如果這是你可以把它叫做網頁如預期「0 0 0 0」,它會返回的第一次。你將不得不提供一個回調函數來執行,以使其達到你想要的效果。
試試這個:
function scrollElementIntoView(elementTop, elementBottom) {
FB.Canvas.getPageInfo(function(info) {
var pageInfo = info;
// ...rest of your code
});
}
感謝導航。我已經完成了該項目,但不能再驗證這一點。對於未來的訪問者,它也可以通過從Facebook網站運行來解決。 –
當然沒有問題 - 關於這方面的更多信息:https://developers.facebook.com/blog/post/543/ – nav
您是否嘗試過在設置變量設置超時。不是一個乾淨的解決方案,但超時保存我的屁股與Facebook的東西更多的時間,我可以計數 – locrizak
你是說要設置一個超時,以確保頁面已加載?我在頁面加載完成後調用它。我正在我們的開發服務器上測試這個。它是否必須在FB網站上運行? –