/ / jQuery cambia el tiempo de setInterval usando el rango de entrada - javascript, jquery, setinterval

jQuery cambia el tiempo de setInterval usando el rango de entrada - javascript, jquery, setinterval

Estoy intentando acceder al valor de tiempo de setInterval, sin embargo, soy nuevo en jQuery y JavaScript y no estoy seguro de cómo puedo lograrlo. Esto es lo que tengo por ahora:

<form name="form4" oninput="amount.value=rangeInput.value">
<input type="range" id="rangeInput" value="1000" name="rangeInput" min="1000" max="10000" step="500"/>
<output name="amount" for="rangeInput">1000</output>
</form>

Y el código sería:

$(function randomName() {
setInterval(function(){
//alert("some text");
}, 10000);
});

Aquí hay un violín de lo que tengo por ahora. https://jsfiddle.net/mLk3wb50/

¿Hay alguna manera de cambiar el valor del tiempo, vincularlo a la entrada de rango?

Básicamente, me gustaría ejecutar la alerta o cualquier acción a intervalos establecidos por la entrada de rango. es posible? ¡Gracias!

Respuestas

5 para la respuesta № 1

Este parece ser el camino. Deberá borrar el intervalo antes de reinicializarlo.

function someFunc(){ alert("hi"); }
var interval;

$(function randomName() {
interval = setInterval(someFunc, 10000);;
});

$("#rangeInput").on("change", function(){
clearInterval(interval);
interval = setInterval(someFunc, $(this).val());
});

VIOLÍN


1 para la respuesta № 2

Aquí hay una manera de cambiar el intervalo:

 function myFunc(){ alert("hi"); }

var myInterval = setInterval(myFunc, 1000);

function changeInterval(){
clearInterval(myInterval);
myInterval = setInterval(myFunc, 2000);
}