W jaki sposób jest ograniczony JavaScript podczas tworzenia aplikacji Facebook?

głosy
12

Zostałem poproszony Facebooka aplikacje. Zanim zobowiązać się do niczego, chcę wiedzieć, jak łatwo gra może zostać przeniesiony do Facebooka? (Jestem całkowicie komfortowe przygotowywania gier w JavaScript w przeglądarce.)

Czy Facebook filtrować JavaScript w jakiś sposób? Czy mogę korzystać z biblioteki jQuery lub inny JS? Mogę zrobić animację poprzez zmianę DOM w locie? Jest to najlepiej iść z iFrame lub użyj FBML?

Zrobiłem trochę grzebie wokół dev stronie na Facebooku. Ale chciałbym usłyszeć od kogoś, kto to zrobił, co krzywa uczenia się jest.

Utwórz 08/06/2009 o 17:44
źródło użytkownik
W innych językach...                            


3 odpowiedzi

głosy
1

Nie jest zbyt trudno byłoby powiedzieć, skoro masz już możliwość zaprogramowania grę, powinno być dobrze, aby zaprogramować aplikację na Facebooku, a także migracji grę na Facebook.

o ile mi wiadomo, z FBML JavaScript będą bezużyteczne (tak JavaScript będą filtrowane)

więc trzeba będzie użyć iframe, który JavaScript pozostanie funkcjonalny (o ile twój JavaScript nie dotykać tagów fbml)

Facebook dokumentacja API jest notorycznie źle.

Odpowiedział 08/06/2009 o 17:49
źródło użytkownik

głosy
9

JavaScript w kontekście Facebooku jest inny, ponieważ to wszystko się przepisany, ponieważ przechodzi przez Facebook. Aby uzyskać poczucie różnice (których jest wiele), start z Dokumentacją FBJS . Zaczynamy przewodnik jest dobry grunt.

Witryna, która będzie Biblii jest wiki.developers.facebook.com jest kanoniczny w zakresie platformy FB. Dodatkowo, jak wszyscy poznali i (miłość? Nienawidzisz?) Platforma Facebook jest ruchomy cel, więc jest to przydatne, aby nadążyć za rzeczy poprzez grupę deweloperów na Facebooku. Lubię też blog Inside Facebook .

Większość dostawców, którzy pozwalają programistom osadzić JavaScript w swoich twórców siły domeny używać iframes do piaskownica swój kod. Facebook podjęła inne podejście do tego problemu. JavaScript, aby dać nam zostanie przeanalizowany, a wszelkie czynności i identyfikatory (nazwy zmiennych) Get poprzedzany z identyfikatorem aplikacji. Na przykład, kolejny blok kodu:

function foo(bar) { var obj = {property: bar}; return obj.property;

}

staje się:

function a12345_foo(a12345_bar) { var a12345_obj = {property: a12345_bar}; return a12345_obj.property; }

Stwarza to możliwości wirtualny dla każdej aplikacji, która biegnie wewnątrz Facebooku. Stamtąd możemy narazić pewną funkcjonalność poprzez zbiór obiektów JavaScript, które pozwalają modyfikować treści na Facebooku. Nasze obiekty są wykonane naśladować funkcjonalność JavaScript możliwie jak najdokładniej, ale może to zająć trochę przyzwyczaić do ludzi, którzy są już biegli z JavaScript.

Wiele przedmiotów, które są po prostu elementy zwykłego Javascript musi być wykonane za pomocą specjalnych połączeń metodą w FBJS. Na przykład, odnosząc się do wartości pola formularza w JS użyć .value, natomiast w FBJS trzeba zrobić .getValue(). To te różnice, które zapobiegają prostu wycinanie i wklejanie JS z zewnątrz na Facebooku.

To podstawowy podkład. To powinno ci na początek wystarczyć. Najlepiej do Ciebie!

Odpowiedział 08/06/2009 o 18:26
źródło użytkownik

głosy
2

Prostym rozwiązaniem jest owinąć całą grę wewnątrz iFrame. Sam FB odfiltrowuje dużo JavaScript wywołuje - w zasadzie, nic z udziałem oknie lub dokumentu obiekty prawdopodobnie nie będzie działać.

Odpowiedział 09/06/2009 o 03:30
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more