개발(Web)/Web

[JavaScript] 생활코딩 WEB2 JavaScript 34강

shinyelee 2020. 7. 22. 23:45

3.html (파일로 쪼개서 정리 정돈하기)

script 태그 내 모든 코드를 잘라내

colors.js

colors.js라는 자바스크립트 파일을 만들어 거기에 해당 코드를 붙여넣기 한다.

3.html

잘라낸 곳은 이렇게 수정.
아무 문제 없이 잘 기능할 뿐더러
html과 js를 분리해 유지 보수가 쉬워졌다.


3.html 최종

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>WEB2 - JavaScript</title>
</head>
<script src="colors.js"></script>
<body>
  <h1><a href="index.html">WEB</a></h1>
  <input id="night_day" type="button" value="night" onclick="
    nightDayHandler(this);
  ">
  <ol>
    <li><a href="1.html">HTML</a></li>
    <li><a href="2.html">CSS</a></li>
    <li><a href="3.html">JavaScript</a></li>
  </ol>
  <h2>JavaScript</h2>
<p>대충 위키피디아 내용</p>
</body>
</html>

colors.js 최종

var Links = {
    setColor:function(color){
        var alist = document.querySelectorAll('a');
        var i = 0;
        while(i < alist.length){
            alist[i].style.color = color;
            i = i + 1;
        }
    }
}
var Body = {
    setColor:function(color){
        document.querySelector('body').style.color = color;
    },
    setBackgroundColor:function (color){
        document.querySelector('body').style.backgroundColor = color;
    }
}

function nightDayHandler(self){
    var target = document.querySelector('body');
        if(self.value === 'night') {
            Body.setBackgroundColor('black');
            Body.setColor('white');
            self.value = 'day';

            Links.setColor('powderblue');
        } else {
            Body.setBackgroundColor('white');
            Body.setColor('black');
            self.value = 'night';

            Links.setColor('blue');
        }
    }

출처

반응형