JavaScript in de Facebook-context is anders, aangezien het allemaal krijgt herschreven als het gaat via Facebook. Om een idee van de verschillen (en dat zijn er veel) krijgen, te beginnen met de FBJS documentatie . De slag gids is een goede primer.
De site die uw bijbel zal worden is wiki.developers.facebook.com , is het canonieke in termen van de FB platform. Bovendien, zoals we allemaal hebben leren kennen en (liefde? Haten?) De Facebook-platform is een bewegend doel, dus het is handig om gelijke tred te houden met de dingen via de Developers Group op Facebook. Ik hou ook van de blog Inside Facebook .
De meeste providers die kunnen ontwikkelaars JavaScript te sluiten in hun domein van kracht ontwikkelaars om iframes gebruiken om hun code zandbak. Facebook heeft een andere benadering van dit probleem genomen. JavaScript die u ons geeft wordt ontleed, en eventuele identifiers (functie en variabele namen) krijgen prepended bij uw aanvraag ID. Bijvoorbeeld de volgende codeblok:
function foo(bar) { var obj = {property: bar}; return obj.property;
}
wordt:
function a12345_foo(a12345_bar) { var a12345_obj = {property: a12345_bar}; return a12345_obj.property; }
Dit creëert een virtuele ruimte voor elke applicatie die in Facebook. Vanaf daar bloot we bepaalde functionaliteit door middel van een verzameling van JavaScript-objecten waarmee u uw content op Facebook aan te passen. Onze objecten zijn gemaakt om de functionaliteit van JavaScript zo goed mogelijk na te bootsen, maar het kan wel even wennen om voor mensen die al bedreven met JavaScript.
Veel items die gewoon zijn elementen in platte JavaScript moet worden bereikt met speciale methode oproepen in FBJS. Bijvoorbeeld bij het verwijzen naar de waarde van een vorm veld in JS u gebruikt .value, terwijl in FBJS je hoeft te doen .getValue(). Het zijn deze verschillen die voorkomen gewoon knippen en plakken van JS van elders in Facebook.
Dat is een fundamentele primer. Dat moet u op weg helpen. Beste aan u!