JavaScript en el contexto de Facebook es diferente en la medida en que se reescribirá a medida que pase por Facebook. Para tener una idea de las diferencias (de las cuales hay muchas), comience con la Documentación de FBJS . La guía de inicio es una buena guía.
El sitio que se convertirá en su biblia es wiki.developers.facebook.com , es canónico en términos de la plataforma FB. Además, como todos hemos llegado a saber y (¿amar, odiar?) La plataforma de Facebook es un objetivo en movimiento, por lo que es útil mantenerse al día con las cosas a través del Grupo de Desarrolladores en Facebook. También me gusta el blog Inside Facebook .
La mayoría de los proveedores que permiten a los desarrolladores insertar JavaScript dentro de su dominio obligan a los desarrolladores a usar iframes para proteger su código. Facebook ha tomado un enfoque diferente a este problema. El JavaScript que nos proporciona se analiza y todos los identificadores (nombres de funciones y variables) se anteponen a su ID de aplicación. Por ejemplo, el siguiente bloque de código:
function foo(bar) { var obj = {property: bar}; return obj.property;
}
se convierte en:
function a12345_foo(a12345_bar) { var a12345_obj = {property: a12345_bar}; return a12345_obj.property; }
Esto crea un alcance virtual para cada aplicación que se ejecuta dentro de Facebook. A partir de ahí, exponemos ciertas funciones a través de una colección de objetos JavaScript que le permiten modificar su contenido en Facebook. Nuestros objetos están hechos para imitar la funcionalidad de JavaScript lo más fielmente posible, pero puede llevar algo de tiempo acostumbrarse a personas que ya son expertos en JavaScript.
Muchos elementos que son simplemente elementos en JavaScript simple se deben lograr con llamadas a métodos especiales en FBJS. Por ejemplo, cuando se refiere al valor de un campo de formulario en JS que utiliza .value, mientras que en FBJS necesita hacerlo .getValue(). Son estas diferencias las que evitan simplemente cortar y pegar JS de otra parte en Facebook.
Esa es una cartilla básica. Eso debería hacerte comenzar. ¡Mejor para usted!