Potrzebowałem jakiś czas temu skryptu wykonującego się w sytuacji gdy zostanie zmieniony adres URL strony. Dotyczyło to dodania do adresu ciągu #costam/cos/innego. Ciąg taki dodawałem do adresu np w sytuacji gdy wczytywałem dynamicznie komentarze do jakiegoś elementu. Element wczytywał się na początku, a niżej były komentarze ładowanie ajaxowo z paginacją, no i każde przejście na koleją podstronę komentarzy dodawało do adresu #!comments/(nr-strony). O ile samo wczytywanie nie było problemem to zamarzyło mi się, że mając adres z http://xlteam.pl/element.html#!comments/2 wczytało odrazu drugą stronę komentarzy. Dlatego też pogooglałem i znalazłem rozwiązanie, które opakowałem w plugin jQuery i działa
Oto cały kod pluginu:
(function($){ $.onLocationChange = function(func, time) { if(!time) time = 500; var currLoc = ''; setInterval(function() { if(window.location.href != currLoc) { currLoc = window.location.href; func(); //execute function } }, time); }; })(jQuery);
przykład jak tego używać w dalszej części wpisu
Najnowsze komentarze