Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Lytebox a strony oparte na ajax
ShadowD
post
Post #1





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


Witam,
mam stronę na której wszystkie dane doczytywane są za pomocą ajax, tak znaczniki html też i zdaję sobie sprawę z tego, że to idiotyzm, ale mniejsza o tym. Ajax dodaje galerię do odpowiedniego diva i chciał bym by litebox przejrzał jeszcze raz elementy doczytane. Nie wiem jak to zrobić, używam jquery i metody $.post.

Próbowałem dodać plik z kodem js w miejsce wykonywanego kody po poprawnym pobraniu danych - nie pomogło.

Jak mogę to zrobić, by litebox przeszedł jeszcze raz po kodzie?

Z góry dziękuję

(zależało by mi na w miarę szybkiej odpowiedzi - muszę oddać stronę a to ostatni element)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
vokiel
post
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Wywołać go ponownie, bądź użyć live lub livequery
Go to the top of the page
+Quote Post
ShadowD
post
Post #3





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


Tak sądzę, że mam go wywołać ale jak, przeglądałem główny plik js i tam nie ma zjawiska onload nigdzie przy funkcji startowej.

Jak może ktoś kiedyś korzystał z tego czegoś i wie jaką funkcji powinienem odpalić...
Go to the top of the page
+Quote Post
vokiel
post
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Sorry, nie spojrzałem, że to Litebox, a on oparty jest na prototype, a nie ja jQuery. Mój błąd.

Sprawdź czy zadziała, jak po załadowaniu treści ajaxem wywołasz initLightbox()


Możesz też przesiąść się na inne rozwiązanie, np jQuery + Lightbox
Go to the top of the page
+Quote Post
ShadowD
post
Post #5





Grupa: Zarejestrowani
Postów: 1 333
Pomógł: 137
Dołączył: 25.03.2008
Skąd: jesteś??

Ostrzeżenie: (0%)
-----


próbowałem nawet cały kod z pliku js dodać a robię to tak:

[HTML] pobierz, plaintext
  1. function openImage(idkat)
  2. {
  3. {:content:}#x28;'#kat').hide()
  4. {:content:}#x28;'#image').show()
  5. $.post("jaall.php", { a: 'galeria', kat: <?php echo $kat; ?>, id: idkat },function(data)
  6. {
  7. {:content:}#x28;'#imgs').html(data)
  8. XXX
  9. })
  10. }
[HTML] pobierz, plaintext

Za xx cały kod z pliku js. Sprawdziłem, nie ma owej funkcji w plikach liteboxa a co za tym idzie - nie działa. ;/

Spróbuję się przenieść njakis inny system - napisze co i jak.

Niestety sprawa wgląda tak, że lightbox kłóci się z moim skryptem, i żaden js nie działa. ;/

Podsumowując, muszę wykorzystać to co jest teraz (Lytebox) i prosze o pomoc w odnalezieniu fragmentu kodu odpowiadającego za przeszukanie strony i dodani wszystkich potrzebnych mu elementów.

EDIT:
Nieco pomyliłeś się w nazwie funkcji, jednak dzięki Tobie znalazłem rozwiązanie -initLytebox().

EDIT2:
Niestety Działa tylko galeria singiel ;/

Ten post edytował ShadowD 18.12.2009, 13:47:38
Go to the top of the page
+Quote Post
vokiel
post
Post #6





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


W pierwszym poście pisałeś Litebox, a w tytule jest Lytebox, a to są 2 różne skrypty. Domyślam się, że jest to jednak ten drugi skrypt (IMG:style_emoticons/default/winksmiley.jpg)

Trzeba przejrzeć źródła, może po załadowaniu treści pomoże wywołanie którejś z funkcji:
[JAVASCRIPT] pobierz, plaintext
  1. initLytebox();
  2. updateLyteboxItems();
  3. removeDuplicates(); // może się przydać po ponownym wczytaniu zdjęć
[JAVASCRIPT] pobierz, plaintext
Właściwie initLytebox() wywołuje też updateLyteboxItems(), więc pewnie wywołanie tej pierwszej powinno zadziałać

BTW, może popraw bbcode w poście wyżej, bo nie wiadomo o co tam chodzi
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 23:15