Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

151
Visualizações
¿Cómo registrar el tiempo entre los clics del usuario y exportarlo como una matriz una vez que alcanzan los 10000 clics?

Mi código que no funciona (usé jquery):

 $('button').click((function() { var clicks = 0; clicks = clicks + 1; var history = [], last = +new Date(); return function e() { history.push(e.timeStamp - last); console.log(history[history.length - 1]); last = e.timeStamp;} return function c(){ if (clicks == 10000){ alert("10k clicks reached"); alert(history); } } //Tested with (clicks == 1), it would keep on alerting me or wouldn't work at all e(); c(); } ));

HTML

<button>Click me</click>

Cuando hago clic en el botón, no hace nada

Hay alguna manera de arreglarlo?

Esperaba que me alertara una vez que alcanzara una cantidad de clics y exportara la matriz por mí.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Cambió el número máximo de clics a 3 para facilitar las pruebas, siéntase libre de cambiar a 10000.
Dado que queremos contar los clics y los tiempos entre ellos, esas variables deben estar fuera del controlador de clics porque las variables dentro de un controlador se borrarán después de cada ejecución del controlador.

Pruébalo: https://jsbin.com/lodifej/edit?html,js,output

 let clicks = 0; const timeBetweenClicks = []; const prevClickTimestamp = []; const clickHandler = () => { const currentTime = Date.now(); const previousClickTime = prevClickTimestamp.length ? prevClickTimestamp[prevClickTimestamp.length - 1] : currentTime; timeBetweenClicks.push(currentTime - previousClickTime); // save current time stamp to calculate time difference the next time button is clicked prevClickTimestamp.push(currentTime); clicks += 1; if (clicks === 3) { alert("3 clicks reached. Time between clicks: " + timeBetweenClicks); // remove event listener $('button').off('click', clickHandler); } }; $('button').click(clickHandler);

Nota
Este código da como resultado un valor 0 para la primera diferencia de tiempo. Por ejemplo, para 3 clics, la salida es [0, 255, 1123]. Si eso no es deseable, se puede eliminar al final usando timeBetweenClicks.shift() . Además, los valores están en ms .

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda