Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

setInterval(function(),time) change time on runtime

I want to change setInterval function time when my code is running.

I try this

<script type="text/javascript">
        $(function () {
            var timer;
            function come() { alert("here"); }
            timer = setInterval(come, 0);
            clearInterval(timer);
            timer = setInterval(come, 10000);
        });
    </script>

First SetInterval does not work!

like image 900
altandogan Avatar asked May 13 '12 23:05

altandogan


1 Answers

You're clearing the interval on the next line, so the first one wont work, as it gets cleared right away :

        timer = setInterval(come, 0);
        clearInterval(timer);
        timer = setInterval(come, 10000);

Also, as gdoron says, setting a interval of nothing isn't really valid, and not a really good idea either, use setTimeout instead, or just run the function outright if no delay is needed.

        come();
        clearInterval(timer);
        timer = setInterval(come, 10000);
like image 154
adeneo Avatar answered Oct 03 '22 19:10

adeneo