2009-02-27 7 views
6

Ich mache eine App auf Facebook und habe Iframe anstelle von FBML gewählt. Das Problem, mit dem ich konfrontiert bin, ist die Verknüpfung mit verschiedenen anderen Seiten der App. Angenommen, ich habe meine App hier gehostet http://fbapp.mysite.com und ich möchte http://fbapp.mysite.com/page1 verknüpfen, wie soll ich das innerhalb des Iframe tun? Wenn Sie direkt auf fbapp.mysite.com/page1 verweisen, wird das gesamte Browserfenster von facebook.com auf fbapp.mysite.com umgeleitet. Ich möchte immer noch, dass die App in der Canvas-Seite sehr "live" ist, aber zu einer Seite1 navigieren möchte. Jede Hilfe wird geschätzt.Facebook App, Iframe Worries (URL-Problem)

Antwort

10

Statt

<a href="http://fbapp.mysite.com/page1">link</a> 

Verwenden

<a href="http://apps.facebook.com/{canvasurl}/page1" target="_top">link</a> 

Dies wird die URL in dem obersten Rahmen (Facebook selbst) laden, und Facebook geht automatisch durch irgendwelche Argumente (Pfade und Abfrage-Strings), um Ihr Rückruf-URL

0
FB_RequireFeatures(["CanvasUtil"], function() { 
    FB.Facebook.init(<api_key>, <path to xd_receiver>); 
    FB.CanvasClient.startTimerToSizeToContent(); 
    FB.CanvasClient.syncUrl(); 
});