- setTimeout을 이용한 랜덤색상변경 예제2024년 08월 29일
- chantleman
- 작성자
- 2024.08.29.:01
<random.js>
let rnd = (min, max)=>{ return Math.floor(Math.random()*(max-min+1)+min); };
<timer.html>
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> div { border: solid; } </style> </head> <body> <div>1초마다 랜덤색</div> <input type="button" value="랜덤"> <input type="button" value="중지"> <script src="../js/random.js"></script> <script> let timer; document.querySelectorAll('input')[1].addEventListener('click',function(){ clearTimeout(timer); document.querySelector('input').removeAttribute('disabled',true); }) document.querySelector('input').addEventListener('click', function () { setTimeout(fnc=function () { const random10 = [], random16 = []; for (let i = 0; i < 3; i++) { random10[i] = rnd(0, 255); //한자리 값을 두자리 수로 변형 const RND = rnd(0, 255).toString(16); if (RND.length == 1) { random16.push("0" + RND); //16진수로 변환 } else { random16.push(RND); //16진수로 변환 } } document.querySelector('div').style.color = "rgb(" + random10 + ")"; document.querySelector('div').style.backgroundColor = "#" + random16.join(""); timer=setTimeout(fnc, 1000); }, 1000) console.log(this); //setAttribute('속성명','속성값'); //버튼 비활성화 this.setAttribute('disabled',true); }); </script> </body> </html>
글자색과 배경색이 랜덤으로 바뀌는 것 확인
728x90'js' 카테고리의 다른 글
XMLHttpRequest (0) 2024.09.18 fetch (1) 2024.09.18 setTimeout(), setInterval() (0) 2024.08.29 팝업 (0) 2024.08.28 href, replace()를 이용한 페이지 이동 (0) 2024.08.22 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)