Por algum motivo, o evento de focus não está se repetindo mesmo usando o ".on'' ao invés do ".one". Testei tanto no Chrome quando no Firefox.
Aqui está meu código:
campo.on("focus", function(){
var tempo = $("#tempo").text();
var cronometroID = setInterval(function(){
tempo--;
$("#tempo").text(tempo);
if(tempo == 1){
$("#tempo-plural").text(" segundo");
};
if(tempo < 1){
$("#tempo-plural").text(" segundos");
clearInterval(cronometroID);
campo.attr("disabled",true)
};
},1000);
Qual a explicação disso?
EDIT: Entendi. O Evento funciona da forma que eu quero porque coloquei a variável "tempo" dentro do evento, e não fora (que é o jeito que o professor mostrou no vídeo). Mas qual a lógica por trás disso?