jQuery使用范围输入更改setInterval的时间

时间:2015-04-20 15:28:40

标签: javascript jquery setinterval

我正在尝试访问setInterval的时间值,但我是jQuery和JavaScript的新手,我不知道如何实现这一点。这就是我现在所拥有的:

<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>

代码将是:

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

这是我现在所拥有的一个小提琴https://jsfiddle.net/mLk3wb50/

有没有办法改变时间值,将其链接到范围输入?

基本上,我想按范围输入设置的间隔执行警报或任何操作。这可能吗?谢谢!

2 个答案:

答案 0 :(得分:5)

这似乎就是这样。在重新初始化之前,您需要清除间隔。

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

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

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

<强> FIDDLE

答案 1 :(得分:1)

这是改变间隔的方法:

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

 var myInterval = setInterval(myFunc, 1000);

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