지나가던 개발자
[HTML, CSS, JavaScript] 오미쿠지(おみくじ) 사이트 만들기 본문
Developing/HTML, CSS, JavaScript
[HTML, CSS, JavaScript] 오미쿠지(おみくじ) 사이트 만들기
KwonYongHyeon 2021. 12. 31. 22:21올해가 이제 2시간도 채 남지 않았다. 나는 올해 무엇을 했을까. 그래도 블로그도 하고, 아주 의미없는 한 해는 아니었던 것 같다.
오미쿠지는 일본 문화의 한 가지이다. 신토 문화의 하나로 신사나 절에서 운세가 써진 제비뽑기를 하여 길흉(吉凶)을 점친다. 굳이 번역한다면 '운세제비'라고 할 수 있다. 한국의 산통과 비슷한 개념이다.
나무위키에서 인용했다.
내가 일본인은 아니지만, 그래도 일본어와 일본 문화를 배우고 있는 입장에서 신년에 오미쿠지 한 번 정도는 해 주는게 좋을 것 같다는 생각이 들었다. 그런데 생각해 보니 문제가 있었다. 한국에는 신사가 없다는 것이다. 절에 가서 "오미쿠지 할 수 있나요?" 라고 물어보기도 좀 그렇고. 그래서 그냥 내가 만들기로 했다.
오미쿠지가 뭐 별건가. 그냥 랜덤으로 만들기만 하면 되는 것 아닌가.
그래서 만들어 봤다.
index.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>おみくじ</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<p id="syokai">이제 <b>신년(新年)</b>입니다!<br>올해의 안좋은 일은 다 떨쳐내고, 이제 신년의 운세를 온라인으로 봐 보는 것은 어떨까요?</p>
<p id="button">올해 당신의 운세는?</p>
<p class="hidden" id="uranai"></p>
<p class="hidden" id="uranaiSyokai"></p>
<script src="script.js"></script>
</body>
</html>
style.css
@import url('https://fonts.googleapis.com/css2?family=Nanum+Gothic:wght@700&display=swap');
body {
font-family: 'Nanum Gothic', sans-serif;
text-align: center;
}
.hidden {
display: none;
}
script.js
const button = document.getElementById('button');
const syokai = document.getElementById('syokai');
const uranai = document.getElementById('uranai');
const uranaiSyokai = document.getElementById('uranaiSyokai');
function hidden(hidden) {
hidden.classList.add('hidden');
}
function uranaiSyokaiFunction() {
uranaiSyokai.classList.remove('hidden');
if (uranai.innerText == '大吉') {
uranaiSyokai.innerText = "축하드립니다! 대길이라니, 올해 좀 잘 나가시겠는데요?";
}
else if (uranai.innerText == '吉') {
uranaiSyokai.innerText = "길입니다! 대길보다는 못하지만, 그래도 즐거운 한 해를 보내시겠네요!";
}
else if (uranai.innerText == '中吉') {
uranaiSyokai.innerText = "중길입니다! 행복한 신년 보내세요 :)";
}
else if (uranai.innerText == '小吉') {
uranaiSyokai.innerText = "소길입니다! 딱 가운데 운세네요..! 무난하게 보내실 수 있겠어요.";
}
else if (uranai.innerText == '末吉') {
uranaiSyokai.innerText = "말길입니다! 아슬아슬하긴 했지만, 그래도 길입니다!";
}
else if (uranai.innerText == '凶') {
uranaiSyokai.innerText = "흉입니다. 올해 조금 조심하셔야 할 수도... (웃음) 이런거는 다 재미일 뿐, 진지하게 받아들이지는 마세요!";
}
else if (uranai.innerText == '大凶') {
uranaiSyokai.innerText = "대흉입니다. 액땜 한 셈 치죠..! (그래도 조금 조심하시는게 좋을 수도...?)";
}
}
function uranaiFunction(event) {
hidden(button);
hidden(syokai);
uranai.classList.remove('hidden');
const unsei = ['大吉', '吉', '中吉', '小吉', '末吉', '凶', '大凶'];
uranai.innerText = unsei[Math.floor(Math.random() * unsei.length)]
uranaiSyokaiFunction()
}
button.addEventListener('click', uranaiFunction);
꼭 2021년 안에 만들고 싶어서 급하게 만들다 보니 디자인이 아예 없다. 그리고 7개의 운세가 나올 확률이 모두 같다.
내년 말에 꼭 이어서 만들어야겠다. 디자인도 예쁘게 하고 싶고, 흉이 나올 확률은 좀 줄이고, 운세 소갯말을 더 예쁘게 하고 싶다.
나는 중길이 나왔다. 그래도 길 축에 속하니 행복하다. 내년에 좋은 일, 재미있는 일이 많이 일어났으면 좋겠다.
내년 말에 이어서 만들 때 이 블로그에 포스팅할 것이긴 하지만, 그래도 깃허브 링크를 달아 놓겠다. https://github.com/kwonyonghyeon/omikuzi
이 글을 보는 여러분은 2022년의 사람이겠지만, 다들 행복한 한 해 보내셨으면 한다. 다들 원하는 일을 다 이루길.
'Developing > HTML, CSS, JavaScript' 카테고리의 다른 글
[JavaScript] 타이핑 효과 만들기 (0) | 2021.12.05 |
---|
Comments