Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kilka skryptów JS na jednej stronie
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
leewang
Witam

Chciałbym dodać na stronie dwa skrypty Lightbox i slider.

W header mam:

  1. <script type="text/javascript" src="js/jquery.js"></script>
  2. <script type="text/javascript" src="js/easySlider.packed.js"></script>
  3.  
  4. <script type="text/javascript">
  5.  
  6. $(document).ready(function(){
  7.  
  8. $("#slider").easySlider({
  9.  
  10. orientation:'vertical',
  11. prevText: 'Wstecz',
  12. nextText: 'Dalej'
  13. });
  14.  
  15. });
  16.  
  17. </script>
  18.  
  19. <script type="text/javascript" src="js/prototype.js"></script>
  20. <script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
  21. <script type="text/javascript" src="js/lightbox.js"></script>


Tylko jest problem, bo nie chcą działać obydwa skrypty na raz. Jak to naprawić? Proszę o pomoc.

Pozdrawiam

kamil4u
Co znaczy nie chcą działać? Daj jakąś stronę testową.

Po co używać 2 bibliotek? Odpowiedników lightbox-a na jQuery jest bardzo dużo( to samo tyczy się prototype i slider-a ). Wybierz jedną bibliotekę i dobierz odpowiednie skrypty, a wszystko pójdzie o wiele łatwiej.
leewang
Nie chce działać, tzn jak dam ten kod, co tutaj wkleiłem, to nie pojawia się przycisk od slidera-a, ale działa litebox, jak usunę kod liteboxa to działa slider.
zegarek84
jeśli nie masz jeszcze niżej wywołań jQuery którego skrótowy zapis zostaje nadpisany przez bibliotekę Prototype (felerną nazwę wybrali - jak piszę o prototype to ludzie o bibliotece od razu myślą) to zastąp ten kod:
Kod
                    $(document).ready(function(){    

                        $("#slider").easySlider({

                            orientation:'vertical',
                            prevText: 'Wstecz',
                            nextText: 'Dalej'
                        });

                    });

TYM:
Kod
(function($){
                    $(document).ready(function(){    

                        $("#slider").easySlider({

                            orientation:'vertical',
                            prevText: 'Wstecz',
                            nextText: 'Dalej'
                        });

                    });
})(jQuery);

jeśli chcesz się dopytywać dlaczego to robi różnice to poczytaj o zasięgu zmiennych w JavaScript i o referencjach do zmiennych...
ps. zamiast konstrukcji (function(lokalny){...})(bedzie_lokalny) można zastosować składnię +function(lokalny){...}(bedzie_lokalny) ale jest mniej intulicyjna

lub zamiast skróconego znaku $ stosuj jQuery lub poczytaj o .noconflict w manualu czy jakoś tak się metoda zwie...
leewang
Działa, jak ręką odjął wszystko się uruchamia, a już miałem nerwy że nie da się tego zrobić.

Bardzo, bardzo Ci dziękuję Zegarek84.

Na pewno poczytam o tym co mi napisałeś.
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.