Mam live()
funkcję w moim jQuery poniżej:Jak zmienić swój kod z .live(), aby .Na()
$("#qandatbl td.weight input").live("change", calculateTotal);
function calculateTotal()
{
var totalweight = hundred;
$("#qandatbl td.weight input").each(function (i, elm){
totalweight = totalweight - parseInt($(elm).val(), 10);
});
$("#total-weight").text(totalweight).append('%').css('font-weight', 'bold');
}
Teraz niektórzy mówią, że funkcja live()
zwalnia zanika i że lepiej jest użyć funkcji on()
. Jeśli to prawda, to w jaki sposób mogę zmienić powyższy kod na on()
zamiast funkcji live()
? Czy to ważne, że nie używam live()
, czy to naprawdę nie ma większego znaczenia?
Dziękuję :) najlepsza odpowiedź: – BruceyBandit
powinieneś zaakceptować swoją odpowiedź, jeśli to prawda. :) – redmoon7777
Zwróć też uwagę, że najlepiej nie użyjesz '$ (document)' do skonfigurowania swojego handlera: chociaż to jest właśnie to, co '.live()' lepiej używasz najbliższego elementu rodzica do rzeczywistego celu element (y), który możesz tak długo, jak ten rodzic istnieje w czasie twojego wywołania do '.on()'. (Prawdopodobnie twój "#qandatbl" element?) – nnnnnn