• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

zmiana parametru data-colorscheme w fb-like w Javascripcie

Object Storage Arubacloud
+1 głos
158 wizyt
pytanie zadane 21 marca 2016 w JavaScript przez Eerie Mądrala (7,130 p.)

Mam na swojej stronie fb-like:

<div class="fb-like" data-href="https://www.facebook.com###cenzuruje-adres-fanpage" data-layout="standard" data-action="like" data-show-faces="true" data-share="true" data-colorscheme="dark"></div>

Chcę napisać funkcję w Javascripcie, która zmienia parametr data-colorscheme pomiędzy dark oraz light. Tylko nie mam pojęcia jak się za to zabrać. To ma być prosta funkcja - klikasz i like na stronie zmienia swoją kolorystykę na light, klikasz jeszcze raz to zmienia z powrotem na dark.

Próbowałem zrobić coś takiego:

var x = document.getElementsByClassName("fb-like");

A potem już tylko wywołać zerowy indeks z tablicy. Nie zadziałało, Wygląda na to, że nie da się w ten sposób wypisać do tablicy elementów klasy fb-like.

Próbowalem też zamknąć całego fb-like w diva, a potem po prostu zmieniać innerHTML tego diva. To również nie działa.

Ktoś coś wie?

2 odpowiedzi

+1 głos
odpowiedź 21 marca 2016 przez Bantu Nałogowiec (34,170 p.)
Przycisk Like dostarczany przez FB jest dostarczany w IFRAME, więc w taki bezpośredni sposób nie da się dostać do jego atrybutów, ja bym spróbował tego co jest podane tutaj: https://developers.facebook.com/docs/reference/javascript/FB.XFBML.parse
komentarz 25 marca 2016 przez Eerie Mądrala (7,130 p.)
Zadałem to samo pytanie na stackoverflow i tam mi pomogli. To jest idealne rozwiązanie w czystym javascripcie: http://www.ajdnes.sk/stack/colorscheme.php Nie wiem jak bardzo twoje rozwiązanie się różni od tego i już nie będę tego sprawdzał bo to które otrzymałem na stackoverflow mnie w pelni satysfakcjonuje. Ale i tak  dam ci upvote bo dobrze kombinowałeś. Dzięki :)
0 głosów
odpowiedź 21 marca 2016 przez ScriptyChris Mędrzec (190,190 p.)

Próbowałem zrobić coś takiego:

?

1

var x = document.getElementsByClassName("fb-like");

A potem już tylko wywołać zerowy indeks z tablicy. Nie zadziałało, Wygląda na to, że nie da się w ten sposób wypisać do tablicy elementów klasy fb-like.

Pojawiło się coś w konsoli?

Wypisywałeś zmienną x w console.log(), albo bezpośrednio w konsoli console.log(document.getElementsByClassName("fb-like"))

komentarz 21 marca 2016 przez Eerie Mądrala (7,130 p.)

w console.log zmienna x pokazuje wartość object HTMLCollection a tu masz jeszcze screena jak ta kolekcja wygląda:

komentarz 21 marca 2016 przez ScriptyChris Mędrzec (190,190 p.)
edycja 21 marca 2016 przez ScriptyChris

A co w konsoli pokazuje x[0]?

Być może Facebook API (bo z tego korzystasz?) nie umożliwia zmiany koloru przycisku "like". Jeśli tak, to zawiń to w jakiś DIV i wtedy zmień styl tego DIVa (kolor, czy co tam chcesz).

komentarz 21 marca 2016 przez Eerie Mądrala (7,130 p.)
[object HTMLDivElement]

A we właściwościach jest takie coś:

http://i.imgur.com/iEnXuEk.png

wraz z masą innych atrybutów. Ale ja nie widzę niczego co mogłoby służyć do zmiany stylu w FB. Nie wkleję obrazka tutaj ze względu na wymiary, sam sobie kliknij w link do imgura.

 

Próbowałem to zawinąć w div i zmienić innerHTML tego diva ale nie dawało te rezultatu. Ale jak zmienić styl tego diva, żeby został zmieniony atrybut colorscheme znajdującego się w nim fb-like? Nie rozumiem tego.
komentarz 21 marca 2016 przez ScriptyChris Mędrzec (190,190 p.)

Próbowałem to zawinąć w div i zmienić innerHTML tego diva ale nie dawało te rezultatu. Ale jak zmienić styl tego diva, żeby został zmieniony atrybut colorscheme znajdującego się w nim fb-like? Nie rozumiem tego.

Nie zmieniaj innerHTML diva, tylko zmień mu styl (np. kolor tła, albo kolor czcionki - zależy co zmieni kolor przycisku LIKE),

komentarz 21 marca 2016 przez Eerie Mądrala (7,130 p.)
Ale co może zmienić kolor tego przycisku, skoro colorscheme w tym przycisku się ustala osobno i nie jest ono zależne od żadnego tła ani koloru czionki?
komentarz 21 marca 2016 przez ScriptyChris Mędrzec (190,190 p.)

Skąd wiesz, że nie jest zależne - próbowałeś? Może przejmie kolor po swoim "rodzicu" (czyli tym DIVie) :)

Albo zerknij jeszcze do attributes tego przycisku (tam na Twoim screenie widać ten atrybut) i może tam jest color-scheme.

Podobne pytania

0 głosów
1 odpowiedź 112 wizyt
pytanie zadane 15 grudnia 2016 w C i C++ przez Kamila Użytkownik (680 p.)
0 głosów
1 odpowiedź 145 wizyt
pytanie zadane 19 marca 2016 w JavaScript przez jajoxd15 Gaduła (3,740 p.)
–1 głos
1 odpowiedź 219 wizyt
pytanie zadane 27 maja 2017 w PHP przez dervil Gaduła (3,030 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...