English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
setInterval()Window setInterval() 메서드는 함수를 반복적으로 호출하거나 코드 패스를 실행하며, 호출 사이에 고정된 시간 지연이 있습니다.
setInterval() 메서드는 지정된 함수나 코드를 지속적으로 호출합니다. 호출 사이에 고정된 시간 지연이 있습니다.clearInterval()메서드나 창을 닫으면 실행이 중단됩니다.
이 메서드는 이 간격을 식별하는 유일한 식별자를 반환하므로, 이를 통해 clearInterval()를 호출하여 제거할 수 있습니다.
지정된 밀리초 내에 함수를 단一次 실행하려면setTimeout()메서드.
window.setInterval(function, 지연, param1, param2, ...)
setInterval(function(){ alert("Hello World"); }, 2000);테스트 보기‹/›
표의 숫자는 setInterval() 메서드를 완전히 지원하는 첫 번째 브라우저 버전을 지정합니다:
메서드 | |||||
setInterval() | 1 | 1 | 4 | 1 | 4 |
매개변수 | 설명 |
---|---|
function | ( 필수 )매지연 (지연)밀리초마다 함수 실행 |
지연 | ( 필수 )타이머는 밀리초 단위로 설정되어야 합니다 (1000 ms = 1초),지정된 함수나 코드 실행 사이에 지연.10이 값이면 사용할 값10 |
param1, param2, ... | ( 선택 사항 )이 함수에 전달된function( 함수)기타 매개변수 (IE9지원하지 않는 더 이른 버전에서 |
返回值: | 一个数字,表示设置的计时器的间隔ID值。将此值与clearInterval()方法一起使用可取消计时器 |
---|
此示例引用外部“命名”函数:
var intervalID; function myFunc() { intervalID = setInterval(myCallback, 2000); } function myCallback() { alert("Hello World"); }테스트 보기‹/›
显示当前时间(就像数字手表一样,每1秒钟执行一次“ startTimer()”函数):
var intervalID = setInterval(startTimer, 1000); function startTimer() { var date = new Date(); var x = document.getElementById("result"); x.innerHTML = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds(); }테스트 보기‹/›
在上一个示例中,使用clearInterval()来停止时间:
var intervalID = setInterval(startTimer, 1000); function startTimer() { var date = new Date(); var x = document.getElementById("result"); x.innerHTML = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds(); } function stopTimer() { clearInterval(intervalID); }테스트 보기‹/›
每200毫秒一次在两种背景颜色之间切换,直到由clearInterval()将其停止:
var t = setInterval(setColor, 200); function setColor() { var x = document.body; x.style.backgroundColor = (x.style.backgroundColor == "coral") ? "lightgreen" : "coral"; } function stopColor() { clearInterval(t); }테스트 보기‹/›
使用setInterval()和clearInterval()创建动态进度条:
var i = 0; var bar = document.getElementById("progress-bar"); var t; function start() { t = setInterval(progress, 60); } function progress() { if(i < 100) { i++; bar.style.width = i + "%"; bar.innerHTML = i + " %"; } else { clearInterval(t); } } function stop() { clearInterval(t); }테스트 보기‹/›
myFunc 함수에 매개변수를 전달합니다(IE에서)9및 이전 버전에서는 작동하지 않습니다):
var intervalID = setInterval(myFunc, 2000, "First", "Second", "Third");테스트 보기‹/›
그러나, 익명 함수를 사용하면 모든 브라우저에서 실행됩니다:
var intervalID = setInterval(function() { myFunc("First", "Second", "Third"); }, 2000);테스트 보기‹/›
창(Window) 참조:clearInterval() 메서드
창(Window) 참조:setTimeout() 메서드
창(Window) 참조:clearTimeout() 메서드