Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] przewijanie wczytanej treści nie działa
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
nergla
Mam taki skrypcik wykorzystujący jQuery

[JAVASCRIPT] pobierz, plaintext
  1. $().ready(function()
  2. {
  3. $(".button").click(function()
  4. {
  5. var idname = $(this).attr("id");
  6. $(".content").load(idname+".php");
  7. return false;
  8. });
  9. });
[JAVASCRIPT] pobierz, plaintext


wczytuje on do <div class='content'></div> odpowiedni plik *.php w zależności od wciśniętego przycisku, wszystko działa elegancko, problem pojawia się kiedy chcę dodać do skryptu funkcję z jScrollPane

[JAVASCRIPT] pobierz, plaintext
  1. $(".content").jScrollPane({wheelSpeed:50});
[JAVASCRIPT] pobierz, plaintext


czyli całość wygląda tak

[JAVASCRIPT] pobierz, plaintext
  1. $().ready(function()
  2. {
  3. $(".button").click(function()
  4. {
  5. var idname = $(this).attr("id");
  6. $(".content").load(idname+".php");
  7. $(".content").jScrollPane({wheelSpeed:50});
  8. return false;
  9. });
  10. });
[JAVASCRIPT] pobierz, plaintext


niestety funkcja która przewijania nie działa na zawartości wczytanej przez load(). Wie ktoś dlaczego? Normalnie jak używam tej funkcji do przewijania tekstu który nie jest dynamicznie doczytywany to wszystko działa.










baa
Nie działa dlatego, że jScrollPane musisz podpiąć dopiero PO zakończeniu ładowania treści.
Powinieneś zrobić to w tzw. callback function, którą dodaje się jako ostatni parametr funkcji load.
Spróbuj tak:

[JAVASCRIPT] pobierz, plaintext
  1. $().ready(function() {
  2. $(".button").click(function() {
  3. var idname = $(this).attr("id");
  4.  
  5. $(".content").load(idname+".php", function() {
  6. // tutaj $(this) odnosi się do elementu,
  7. // do którego ładujesz treść za pomocą load()
  8. // jeśli by nie działało, spróbuj dać $(".content")
  9. $(this).jScrollPane({wheelSpeed:50});
  10. });
  11.  
  12. return false;
  13. });
  14. });
[JAVASCRIPT] pobierz, plaintext

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.