>  기사  >  웹 프론트엔드  >  window.setInterval() 메소드의 정의와 사용법, offsetLeft와 style.left_javascript 스킬의 차이점

window.setInterval() 메소드의 정의와 사용법, offsetLeft와 style.left_javascript 스킬의 차이점

WBOY
WBOY원래의
2016-05-16 15:32:401278검색

정의 및 사용법

setInterval() 메서드는 지정된 기간(밀리초 단위)에 따라 함수를 호출하거나 표현식을 계산할 수 있습니다.

setInterval() 메서드는 clearInterval() 이 호출되거나 창이 닫힐 때까지 함수를 계속 호출합니다. setInterval()에서 반환된 ID 값은clearInterval() 메서드에 대한 인수로 사용될 수 있습니다.

팁: 1000밀리초 = 1초.

문법

setInterval(코드,밀리초,랭)

参数 描述
code 必需。要调用的函数或要执行的代码串。
millisec 必须。周期性执行或调用 code 之间的时间间隔,以毫秒计。
lang 可选。 JScript | VBScript | JavaScript

요약:

이 방법은 지정된 주기에 따라 프로그램을 실행할 수 있습니다. 기간은 밀리초 단위입니다.

이 메소드는 브라우저를 닫거나 clearInterval() 메소드를 호출하지 않으면 영원히 실행됩니다.

반환 값은 이 메소드의 고유 ID입니다.

이 타이머 함수의 실행을 중지하려면 clearInterval() 메서드 장을 참조하세요.

창 개체의 속성과 메서드를 더 보려면 클릭하세요.

브라우저 지원:

(1) IE 브라우저는 이 방법을 지원합니다.
(2) Firefox 브라우저는 이 방법을 지원합니다.
(3) 오페라 브라우저는 이 방법을 지원합니다.
(4) Chrome 브라우저는 이 방법을 지원합니다.
(5).Safria 브라우저는 이 방법을 지원합니다.

코드 예:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>蚂蚁部落</title>
<script type="text/javascript"> 
window.onload=function(){ 
 n=0; 
 function show(){ 
 document.getElementById("mytext").value=n+1; 
 n=n+1; 
 } 
 var flag=setInterval(show,1000) 
} 
</script> 
</head> 
<body> 
<input type="text" size=10 id="mytext" /> 
</body> 
</html>

offsetLeft와 style.left의 차이점을 소개해드리겠습니다

offsetLeft는 상위 개체를 기준으로 왼쪽 여백을 가져옵니다

왼쪽은 위치 속성이 있는 상위 객체를 기준으로

왼쪽 여백을 가져오거나 설정합니다(위치는 상대적으로 정의됨).

상위 div의 위치가 상대 위치로 정의되고 하위 div의 위치가 절대 위치로 정의된 경우 하위 div의 style.left 값은 상위 div의 값을 기준으로 합니다.
이는 offsetLeft와 동일하며 차이점은 다음과 같습니다.

1. style.left는 28px와 같은 문자열을 반환하고 offsetLeft는 값 28을 반환합니다. 얻은 값을 계산해야 하는 경우
offsetLeft를 사용하는 것이 더 편리합니다.

2. style.left는 읽기-쓰기이고 offsetLeft는 읽기 전용이므로 div의 위치를 ​​변경하려면 style.left만 수정하면 됩니다.

3. style.left 값을 미리 정의해야 합니다. 그렇지 않으면 얻은 값이 비어 있게 됩니다. 그리고 html로 정의해야 합니다.
에 정의되어 있는지 실험을 해봤습니다. CSS에서 style.left의 값은 여전히 ​​비어 있습니다. 이것이 처음에 발생한 문제입니다. 항상 style.left의 값을 얻을 수 없습니다.

offsetLeft는 div의 위치를 ​​미리 정의하지 않고도 얻을 수 있습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.