Moje środowisko internetowe automatycznie zaktualizowało mój skrypt jQuery do ostatniej wersji 1.9.Jak zamienić "na żywo" z jQuery 1.8.3 na jQuery 1.9?
Teraz moim:
$(".myclass").live("click", function() {...
nie działają już. Używałem go głównie z wywołanym ajaxem, który wypełnił html na mojej stronie.
Chciałbym wiedzieć, jak zastąpić tę funkcjonalność w ostatniej wersji. Znajomy powiedział mi, żebym zamiast tego używał "on", ale "on" pozostaje ustawiony na tym samym elemencie.
Wyjaśnienie, w tym przykładzie (bez ajax), używam ikony "+", aby wyświetlić "ul li list".
$(".closed").live('click', function(){
$("#ul_list_"+$(this).attr('id')).addClass("displayed").removeClass("hidden").show();
$(this).addClass("openned").removeClass('closed');
$(this).html('<i class="icon-minus"></i>');
});
$(".openned").live('click', function(){
$("#ul_list_"+$(this).attr('id')).addClass("hidden").removeClass("displayed").hide();
$(this).addClass("closed").removeClass('openned');
$(this).html('<i class="icon-plus"></i>');
});
(wiem, że skrypt nie jest najbardziej zoptymalizowane kiedykolwiek, ale to działało. Kiedyś zajęcia, aby otworzyć lub zamknąć list. A jeśli użytkownik nie ma włączonego JS, nic nie jest ukryte, wszystko zagięte listy są otwarte)
Uwagi:
- próbowałem https://github.com/jquery/jquery-migrate, ale tylko wiadomość, że mam to „JQMIGRATE: jQuery.fn.live() jest przestarzała”, a nie jak to naprawić to.
Czy próbowałeś "wiązania"? –
Rzeczywiście, szukałem od 1,8 do 1,9 lub po prostu "jquery 1.9 live", nie zauważając, że było to z 1.7! Dziękuję Ci! – Polopollo
Zobacz [Przykłady migracji] (http://stackoverflow.com/a/14354091/584192) –