자바스크립트 setInterval() 을 멈추려면 어떻게 해야할까요? 채택완료
초보자나요
9년 전
조회 2,462
우선 슈와이님께서 전에 알려주셨던대로 했습니다.
</p><p><script type="text/javascript"> </p><p>function stop(){
clearInterval();
}</p><p>var arr = [], i = 0;
arr[0] = function() {
$(".test").css("background","black");
}
arr[1] = function() {
$(".test").css("background","red");
}
arr[2] = function() {
$(".test").css("background","blue");
}
setInterval(function() { i %= 3; arr[i++]() }, 100); </p><p></script></p><p>
배경색이 순차적으로 바뀌게 했는데요
이걸 스탑시키려고 clearInterval(); 을 로드했는데
멈추질 않습니다.
멈추게는 어떻게 해야할까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
9년 전
참조 : http://www.w3schools.com/jsref/met_win_clearinterval.asp">http://www.w3schools.com/jsref/met_win_clearinterval.asp
setInterval 을 하나의 변수로 담아서 명시해주시고, clearInterval 에서 그 변수명을 대상으로 clear 해줍니다.
그리고 배경색 바꾸는걸 애니메이션으로 구현하고자 하신다면 css 에서 keyframe animation 을 한번 다뤄 보시는것도 좋을 듯합니다.
참조 : http://www.w3schools.com/css/css3_animations.asp">http://www.w3schools.com/css/css3_animations.asp
</p><pre><script type="text/javascript"> </pre><pre>var myTime;
function stop(){
clearInterval(myTime);</pre><pre>}</pre><pre>var arr = [], i = 0;
arr[0] = function() {
$(".test").css("background","black");
}
arr[1] = function() {
$(".test").css("background","red");
}
arr[2] = function() {
$(".test").css("background","blue");
}
<span style="font-size: 14.6667px; font-family: 돋움;">myTime = </span>setInterval(function() { i %= 3; arr[i++]() }, 100);
</script></pre><p>
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인