Update index.html
Browse files- index.html +395 -19
index.html
CHANGED
|
@@ -1,19 +1,395 @@
|
|
| 1 |
-
<!
|
| 2 |
-
<html>
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="ko">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>λ‘λ§μ 8μ₯ μμ‘ λμ°λ―Έ (3κ° λΈλ‘ κ³ μ )</title>
|
| 7 |
+
<style>
|
| 8 |
+
/* κΈ°λ³Έ μ€νμΌ */
|
| 9 |
+
body {
|
| 10 |
+
background-color: #000; /* κ²μ λ°°κ²½ */
|
| 11 |
+
color: #FFFFFF; /* κΈ°λ³Έ κΈμμ (ννΈ μμμΌλ‘ λ체λλ―λ‘ ν¬κ² μλ―Έ μμ) */
|
| 12 |
+
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
| 13 |
+
margin: 0;
|
| 14 |
+
padding: 20px;
|
| 15 |
+
line-height: 1.6;
|
| 16 |
+
overflow-y: auto; /* λ΄μ©μ΄ κΈΈμ΄λ μ€ν¬λ‘€ κ°λ₯νκ² */
|
| 17 |
+
-webkit-overflow-scrolling: touch; /* λͺ¨λ°μΌ μ€ν¬λ‘€ λΆλλ½κ² */
|
| 18 |
+
word-break: keep-all; /* λ¨μ΄ μ€κ°μ μ€λ°κΏ λ°©μ§ (νκΈμ μ ν©) */
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
h1 {
|
| 22 |
+
text-align: center;
|
| 23 |
+
margin-bottom: 15px; /* 컨νΈλ‘€κ³Όμ κ°κ²© */
|
| 24 |
+
color: #FFFF00; /* λ
Έλμ μ λͺ© */
|
| 25 |
+
font-size: 1.8em;
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
/* μ 컨ν
μ΄λ μ€νμΌ (νλμ©λ§ 보μ΄λλ‘) */
|
| 29 |
+
.verse {
|
| 30 |
+
display: none; /* κΈ°λ³Έμ μΌλ‘λ μ¨κΉ */
|
| 31 |
+
margin-top: 20px; /* 컨νΈλ‘€κ³Όμ κ°κ²© */
|
| 32 |
+
margin-bottom: 30px;
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
.verse.active {
|
| 36 |
+
display: block; /* νμ±νλ μ λ§ λ³΄μ */
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
.verse-number {
|
| 40 |
+
font-weight: bold;
|
| 41 |
+
margin-bottom: 15px;
|
| 42 |
+
display: block;
|
| 43 |
+
font-size: 1.2em;
|
| 44 |
+
color: #FFFF00; /* μ λ²νΈλ λ
Έλμ */
|
| 45 |
+
text-align: center;
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
/* ννΈ μ 체λ₯Ό λ΄λ 컨ν
μ΄λ (Flexboxλ‘ μ€λ°κΏ μ²λ¦¬) */
|
| 49 |
+
.parts-container {
|
| 50 |
+
display: flex;
|
| 51 |
+
flex-wrap: wrap; /* λ΄μ©μ΄ λμΉλ©΄ μλμΌλ‘ λ€μ μ€λ‘ μ΄λ */
|
| 52 |
+
gap: 10px; /* ννΈ κ° κ°κ²© */
|
| 53 |
+
justify-content: center; /* ννΈλ€μ μ€μ μ λ ¬ */
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
/* ννΈ λΈλ‘ μ€νμΌ */
|
| 57 |
+
.part {
|
| 58 |
+
background-color: #333; /* μ΄λμ΄ νμ λ°°κ²½ */
|
| 59 |
+
color: #333; /* ν΄λ¦ μ κΈμμ (λ°°κ²½μκ³Ό λμΌνμ¬ μ¨κΉ) */
|
| 60 |
+
padding: 12px 8px;
|
| 61 |
+
border-radius: 5px;
|
| 62 |
+
cursor: pointer; /* ν΄λ¦ κ°λ₯ νμ */
|
| 63 |
+
text-align: center;
|
| 64 |
+
box-sizing: border-box; /* ν¨λ©κ³Ό 보λλ₯Ό λλΉμ ν¬ν¨ */
|
| 65 |
+
white-space: normal; /* ν
μ€νΈ κΈΈμ΄μ λ°λΌ μ€λ°κΏ νμ© */
|
| 66 |
+
|
| 67 |
+
/* λͺ¨λ νλ©΄ ν¬κΈ°μμ 3κ°μ© ν μ€μ μ€λλ‘ λλΉ μ€μ */
|
| 68 |
+
/* flex-grow: 0, flex-shrink: 0 μΌλ‘ ν¬κΈ° κ³ μ */
|
| 69 |
+
flex: 0 0 calc(33.33% - 10px); /* 1/3 λλΉμμ κ°κ²© 10pxμ λΊ κ° */
|
| 70 |
+
min-width: 50px; /* λ무 μμμ§λ κ² λ°©μ§ (μ΅μ ν¬κΈ° μ€μ ) */ /* μ΄ κ°λ³΄λ€ νλ©΄μ΄ μμμ§λ©΄ 3κ° μ μ§κ° μ΄λ €μΈ μ μμ΅λλ€. */
|
| 71 |
+
|
| 72 |
+
transition: background-color 0.2s, color 0.2s, font-weight 0.1s; /* μμ, λ°°κ²½, κ΅΅κΈ° λ³κ²½ μ λλ©μ΄μ
*/
|
| 73 |
+
}
|
| 74 |
+
|
| 75 |
+
|
| 76 |
+
/* ν΄λ¦λ ννΈ μ€νμΌ (νμ λ
ΈλμμΌλ‘ λ³κ²½ λ° λ°°κ²½ κ°μ‘°) */
|
| 77 |
+
.part.active {
|
| 78 |
+
color: #FFFF00; /* ν΄λ¦λ ννΈλ λ
Έλμ */
|
| 79 |
+
background-color: #555; /* ν΄λ¦ μ μ½κ° λ°μ νμ λ°°κ²½ */
|
| 80 |
+
font-weight: bold; /* ν΄λ¦λ λ¨μ΄ κ°μ‘° */
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
/* 컨νΈλ‘€ λ²νΌ λ° μ¬λΌμ΄λ 컨ν
μ΄λ μ€νμΌ */
|
| 84 |
+
.controls {
|
| 85 |
+
text-align: center;
|
| 86 |
+
margin-bottom: 20px; /* μ λ΄μ©κ³Όμ κ°κ²© */
|
| 87 |
+
/* λ΄λΆ μμ μ λ ¬μ μν΄ flexbox μ¬μ© */
|
| 88 |
+
display: flex;
|
| 89 |
+
justify-content: center; /* μ€μ μ λ ¬ */
|
| 90 |
+
align-items: center; /* μΈλ‘ μ€μ μ λ ¬ */
|
| 91 |
+
flex-wrap: wrap; /* κ³΅κ° λΆμ‘± μ λ€μ μ€λ‘ μ΄λ */
|
| 92 |
+
gap: 15px; /* 컨νΈλ‘€ μμ κ° κ°κ²© */
|
| 93 |
+
}
|
| 94 |
+
|
| 95 |
+
/* μ¬λΌμ΄λ λ° λΌλ²¨ μ€νμΌ */
|
| 96 |
+
.rate-control {
|
| 97 |
+
display: flex; /* λΌλ²¨κ³Ό μ¬λΌμ΄λλ₯Ό κ°λ‘λ‘ λ°°μΉ */
|
| 98 |
+
align-items: center;
|
| 99 |
+
gap: 5px; /* λΌλ²¨κ³Ό μ¬λΌμ΄λ κ° κ°κ²© */
|
| 100 |
+
color: #AAAAAA; /* λΌλ²¨ μμ */
|
| 101 |
+
font-size: 0.9em;
|
| 102 |
+
}
|
| 103 |
+
|
| 104 |
+
/* μ¬λΌμ΄λ μ체 μ€νμΌ (λΈλΌμ°μ λ³ μ€νμΌ μ¬μ μ νμ) */
|
| 105 |
+
input[type="range"] {
|
| 106 |
+
-webkit-appearance: none; /* κΈ°λ³Έ μ€νμΌ μ κ±° */
|
| 107 |
+
appearance: none;
|
| 108 |
+
width: 120px; /* μ¬λΌμ΄λ λλΉ */
|
| 109 |
+
height: 5px; /* μ¬λΌμ΄λ νΈλ λμ΄ */
|
| 110 |
+
background: #555; /* νΈλ λ°°κ²½μ */
|
| 111 |
+
outline: none;
|
| 112 |
+
opacity: 0.7;
|
| 113 |
+
transition: opacity .2s;
|
| 114 |
+
border-radius: 5px;
|
| 115 |
+
}
|
| 116 |
+
|
| 117 |
+
input[type="range"]:hover {
|
| 118 |
+
opacity: 1;
|
| 119 |
+
}
|
| 120 |
+
|
| 121 |
+
/* μ¬λΌμ΄λ μΈ(thumb) μ€νμΌ */
|
| 122 |
+
input[type="range"]::-webkit-slider-thumb {
|
| 123 |
+
-webkit-appearance: none;
|
| 124 |
+
appearance: none;
|
| 125 |
+
width: 15px;
|
| 126 |
+
height: 15px;
|
| 127 |
+
background: #FFFF00; /* λ
Έλμ μΈ */
|
| 128 |
+
cursor: pointer;
|
| 129 |
+
border-radius: 50%; /* μν */
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
input[type="range"]::-moz-range-thumb {
|
| 133 |
+
width: 15px;
|
| 134 |
+
height: 15px;
|
| 135 |
+
background: #FFFF00; /* λ
Έλμ μΈ */
|
| 136 |
+
cursor: pointer;
|
| 137 |
+
border-radius: 50%; /* μν */
|
| 138 |
+
}
|
| 139 |
+
|
| 140 |
+
.controls button {
|
| 141 |
+
padding: 12px 20px; /* λ²νΌ ν¨λ© μ‘°μ */
|
| 142 |
+
background-color: #555; /* μ΄λμ΄ νμ λ°°κ²½ */
|
| 143 |
+
color: #FFFF00; /* λ
Έλ κΈμ */
|
| 144 |
+
border: none;
|
| 145 |
+
border-radius: 5px;
|
| 146 |
+
cursor: pointer;
|
| 147 |
+
font-size: 0.9em; /* λ²νΌ κΈμ ν¬κΈ° μ‘°μ */
|
| 148 |
+
transition: background-color 0.2s;
|
| 149 |
+
-webkit-appearance: none; /* λͺ¨λ°μΌ κΈ°λ³Έ λ²νΌ μ€νμΌ μ κ±° */
|
| 150 |
+
appearance: none;
|
| 151 |
+
}
|
| 152 |
+
|
| 153 |
+
.controls button:hover:not(:disabled) {
|
| 154 |
+
background-color: #777; /* νΈλ² μ μ½κ° λ°κ² */
|
| 155 |
+
}
|
| 156 |
+
|
| 157 |
+
.controls button:disabled {
|
| 158 |
+
opacity: 0.5; /* λΉνμ±ν μ νλ¦¬κ² */
|
| 159 |
+
cursor: not-allowed;
|
| 160 |
+
}
|
| 161 |
+
|
| 162 |
+
/* λͺ¨λ°μΌ μ΅μ ν - νμν λΆλΆλ§ μ‘°μ (3κ° λΈλ‘ λ μ΄μμμ CSS Flexboxμ λ§‘κΉ) */
|
| 163 |
+
@media (max-width: 768px) {
|
| 164 |
+
body { padding: 15px; }
|
| 165 |
+
h1 { font-size: 1.7em; margin-bottom: 10px; }
|
| 166 |
+
.verse-number { font-size: 1.1em; }
|
| 167 |
+
.controls {
|
| 168 |
+
gap: 10px; /* 컨νΈλ‘€ μμ κ° κ°κ²© μ€μ */
|
| 169 |
+
}
|
| 170 |
+
.controls button { padding: 10px 18px; font-size: 0.85em; }
|
| 171 |
+
input[type="range"] { width: 100px; }
|
| 172 |
+
.part {
|
| 173 |
+
/* λͺ¨λ°μΌμμλ 3κ°μ© μ μ§ */
|
| 174 |
+
flex: 0 0 calc(33.33% - 10px);
|
| 175 |
+
padding: 10px 6px;
|
| 176 |
+
min-width: 50px; /* μ΅μ λλΉλ μ μ§ λλ νμμ μ‘°μ */
|
| 177 |
+
}
|
| 178 |
+
.parts-container { gap: 10px; } /* ννΈ μ»¨ν
μ΄λ κ°κ²© */
|
| 179 |
+
}
|
| 180 |
+
|
| 181 |
+
@media (max-width: 480px) { /* μμ λͺ¨λ°μΌ */
|
| 182 |
+
body { padding: 10px; }
|
| 183 |
+
h1 { font-size: 1.5em; margin-bottom: 8px; }
|
| 184 |
+
.verse-number { font-size: 1em; }
|
| 185 |
+
.controls {
|
| 186 |
+
flex-direction: column; /* μΈλ‘ μ λ ¬ */
|
| 187 |
+
gap: 8px;
|
| 188 |
+
}
|
| 189 |
+
.controls button { padding: 8px 15px; font-size: 0.8em; width: 80%;} /* λ²νΌ μΈλ‘ μ λ ¬ λ° λλΉ μ‘°μ */
|
| 190 |
+
.rate-control {
|
| 191 |
+
width: 80%; /* μ¬λΌμ΄λ μμ λλΉ μ‘°μ */
|
| 192 |
+
justify-content: space-between; /* λΌλ²¨κ³Ό μ¬λΌμ΄λ μ λ μ λ ¬ */
|
| 193 |
+
}
|
| 194 |
+
input[type="range"] { width: 60%; } /* μ¬λΌμ΄λ λλΉ μ‘°μ */
|
| 195 |
+
.part {
|
| 196 |
+
/* λ μμ λͺ¨λ°μΌμμλ 3κ°μ© μ μ§ */
|
| 197 |
+
flex: 0 0 calc(33.33% - 8px); /* κ°κ²© μ‘°μ */
|
| 198 |
+
padding: 8px 5px; /* ν¨λ© μ‘°μ */
|
| 199 |
+
min-width: 45px; /* μ΅μ λλΉ λ μ€μ΄κΈ° */
|
| 200 |
+
font-size: 0.9em; /* κΈμ ν¬κΈ° μ€μ΄κΈ° */
|
| 201 |
+
}
|
| 202 |
+
.parts-container { gap: 8px; }
|
| 203 |
+
}
|
| 204 |
+
|
| 205 |
+
|
| 206 |
+
</style>
|
| 207 |
+
</head>
|
| 208 |
+
<body>
|
| 209 |
+
<h1>λ‘λ§μ 8μ₯</h1>
|
| 210 |
+
|
| 211 |
+
<div class="controls">
|
| 212 |
+
<button id="prev-verse">μ΄μ μ </button>
|
| 213 |
+
<button id="next-verse">λ€μ μ </button>
|
| 214 |
+
<div class="rate-control">
|
| 215 |
+
<label for="rate-slider">μλ:</label>
|
| 216 |
+
<input type="range" id="rate-slider" min="0.5" max="2.0" step="0.1" value="1.0">
|
| 217 |
+
</div>
|
| 218 |
+
</div>
|
| 219 |
+
|
| 220 |
+
<div id="verse-display">
|
| 221 |
+
<!-- μ¬κΈ°μ JavaScriptλ‘ μ λ΄μ©μ΄ λ‘λλ©λλ€. -->
|
| 222 |
+
</div>
|
| 223 |
+
|
| 224 |
+
|
| 225 |
+
<script>
|
| 226 |
+
// λ‘λ§μ 8μ₯ μ λ¬Έ (μ 곡ν΄μ£Όμ ν
μ€νΈ - κ° μ μ΄ νλμ λ¬Έμμ΄)
|
| 227 |
+
const verses = [
|
| 228 |
+
"κ·Έλ¬λ―λ‘ μ΄μ 그리μ€λ μμ μμ μλ μμκ²λ κ²°μ½ μ μ£ν¨μ΄ μλλ", // 1
|
| 229 |
+
"μ΄λ 그리μ€λ μμ μμ μλ μλͺ
μ μ±λ Ήμ λ²μ΄ μ£μ μ¬λ§μ λ²μμ λλ₯Ό ν΄λ°©νμμμ΄λΌ", // 2
|
| 230 |
+
"μ¨λ²μ΄ μ‘μ μΌλ‘ λ§λ―Έμμ μ°μ½νμ¬ ν μ μλ κ·Έκ²μ νλλμ νμλλ κ³§ μ£λ‘ λ§λ―Έμμ μκΈ° μλ€μ μ£ μλ μ‘μ μ λͺ¨μμΌλ‘ 보λ΄μ΄ μ‘μ μ μ£λ₯Ό μ νμ¬", // 3
|
| 231 |
+
"μ‘μ μ λ°λ₯΄μ§ μκ³ κ·Έ μμ λ°λΌ ννλ μ°λ¦¬μκ² μ¨λ²μ μκ΅¬κ° μ΄λ£¨μ΄μ§κ² νλ € νμ¬μ΄λΌ", // 4
|
| 232 |
+
"μ‘μ μ λ°λ₯΄λ μλ μ‘μ μ μΌμ, μμ λ°λ₯΄λ μλ μμ μΌμ μκ°νλλ", // 5
|
| 233 |
+
"μ‘μ μ μκ°μ μ¬λ§μ΄μ μμ μκ°μ μλͺ
κ³Ό νμμ΄λλΌ", // 6
|
| 234 |
+
"μ‘μ μ μκ°μ νλλκ³Ό μμκ° λλλ μ΄λ νλλμ λ²μ ꡴볡νμ§ μλν λΏ μλλΌ ν μλ μμμ΄λΌ", // 7
|
| 235 |
+
"μ‘μ μ μλ μλ€μ νλλμ κΈ°μμκ² ν μ μλλλΌ", // 8
|
| 236 |
+
"λ§μΌ λν¬ μμ νλλμ μμ΄ κ±°νμλ©΄ λν¬κ° μ‘μ μ μμ§ μλνκ³ μμ μλλ λꡬλ μ§ κ·Έλ¦¬μ€λμ μμ΄ μμΌλ©΄ 그리μ€λμ μ¬λμ΄ μλλΌ", // 9
|
| 237 |
+
"λ 그리μ€λκ»μ λν¬ μμ κ³μλ©΄ λͺΈμ μ£λ‘ λ§λ―Έμμ μ£½μ κ²μ΄λ μμ μλ‘ λ§λ―Έμμ μ΄μ μλ κ²μ΄λλΌ", // 10
|
| 238 |
+
"μμλ₯Ό μ£½μ μ κ°μ΄λ°μ μ΄λ¦¬μ μ΄μ μμ΄ λν¬ μμ κ±°νμλ©΄ 그리μ€λ μμλ₯Ό μ£½μ μ κ°μ΄λ°μ μ΄λ¦¬μ μ΄κ° λν¬ μμ κ±°νμλ κ·Έμ μμΌλ‘ λ§λ―Έμμ λν¬ μ£½μ λͺΈλ μ΄λ¦¬μ리λΌ", // 11
|
| 239 |
+
"κ·Έλ¬λ―λ‘ νμ λ€μ, μ°λ¦¬κ° λΉμ§ μλ‘λ μ‘μ μκ² μ Έμ μ‘μ λλ‘ μ΄ κ²μ΄ μλλλΌ", // 12
|
| 240 |
+
"λν¬κ° μ‘μ λλ‘ μ΄λ©΄ λ°λμ μ£½μ κ²μ΄λ‘λ μμΌλ‘μ λͺΈμ νμ€μ μ£½μ΄λ©΄ μ΄λ¦¬λ", // 13
|
| 241 |
+
"λ¬΄λ¦ νλλμ μμΌλ‘ μΈλν¨μ λ°λ μ¬λμ κ³§ νλλμ μλ€μ΄λΌ", // 14
|
| 242 |
+
"λν¬λ λ€μ 무μμνλ μ’
μ μμ λ°μ§ μλνκ³ μμμ μμ λ°μμΌλ―λ‘ μ°λ¦¬κ° μλΉ μλ²μ§λΌκ³ λΆλ₯΄μ§λλλΌ", // 15
|
| 243 |
+
"μ±λ Ήμ΄ μΉν μ°λ¦¬μ μκ³Ό λλΆμ΄ μ°λ¦¬κ° νλλμ μλ
μΈ κ²μ μ¦μΈνμλλ", // 16
|
| 244 |
+
"μλ
μ΄λ©΄ λν νμ¬ κ³§ νλλμ νμ¬μ 그리μ€λμ ν¨κ»ν νμ¬λ μ°λ¦¬κ° κ·Έμ ν¨κ» μκ΄μ λ°κΈ° μνμ¬ κ³ λλ ν¨κ» λ°μμΌ ν κ²μ΄λλΌ", // 17
|
| 245 |
+
"μκ°ν건λ νμ¬μ κ³ λμ μ₯μ°¨ μ°λ¦¬μκ² λνλ μκ΄κ³Ό λΉκ΅ν μ μλλ€", // 18
|
| 246 |
+
"νΌμ‘°λ¬Όμ΄ κ³ λνλ λ°λ νλλμ μλ€λ€μ΄ λνλλ κ²μ΄λ", // 19
|
| 247 |
+
"νΌμ‘°λ¬Όμ΄ ν무νλ° κ΅΄λ³΅νλ κ²μ μκΈ° λ»μ΄ μλμ μ€μ§ ꡴볡νκ² νμ μ΄λ‘ λ§λ―Έμμμ΄λΌ", // 20
|
| 248 |
+
"κ·Έ λ°λΌλ κ²μ νΌμ‘°λ¬Όλ μ©μ΄μ§μ μ’
λ
Έλ¦ ν λ°μ ν΄λ°©λμ΄ νλλμ μλ
λ€μ μκ΄μ μμ μ μ΄λ₯΄λ κ²μ΄λλΌ", // 21
|
| 249 |
+
"νΌμ‘°λ¬Όμ΄ λ€ μ΄μ κΉμ§ ν¨κ» νμνλ©° ν¨κ» κ³ ν΅μ κ²ͺκ³ μλ κ²μ μ°λ¦¬κ° μλλλΌ", // 22
|
| 250 |
+
"κ·ΈλΏ μλλΌ λν μ°λ¦¬ κ³§ μ±λ Ήμ μ²μ μ΅μ μ΄λ§€λ₯Ό λ°μ μ°λ¦¬κΉμ§λ μμΌλ‘ νμνμ¬ μμ λ κ² κ³§ μ°λ¦¬ λͺΈμ μλμ κΈ°λ€λ¦¬λλλΌ", // 23
|
| 251 |
+
"μ°λ¦¬κ° μλ§μΌλ‘ ꡬμμ μ»μμΌλ§€ 보μ΄λ μλ§μ΄ μλ§μ΄ μλλ 보λ κ²μ λκ° λ°λΌλ¦¬μ", // 24
|
| 252 |
+
"λ§μΌ μ°λ¦¬κ° λ³΄μ§ λͺ»νλ κ²μ λ°λΌλ©΄ μ°ΈμμΌλ‘ κΈ°λ€λ¦΄μ§λλΌ", // 25
|
| 253 |
+
"μ΄μ κ°μ΄ μ±λ Ήλ μ°λ¦¬μ μ°μ½ν¨μ λμ°μλλ μ°λ¦¬λ λ§λ
ν κΈ°λν λ°λ₯Ό μμ§ λͺ»νλ μ€μ§ μ±λ Ήμ΄ λ§ν μ μλ νμμΌλ‘ μ°λ¦¬λ₯Ό μνμ¬ μΉν κ°κ΅¬νμλλλΌ", // 26
|
| 254 |
+
"λ§μμ μ΄νΌμλ μ΄κ° μ±λ Ήμ μκ°μ μμλλ μ΄λ μ±λ Ήμ΄ νλλμ λ»λλ‘ μ±λλ₯Ό μνμ¬ κ°κ΅¬νμ¬μ΄λλΌ", // 27
|
| 255 |
+
"μ°λ¦¬κ° μκ±°λμ νλλμ μ¬λνλ μ κ³§ κ·Έμ λ»λλ‘ λΆλ₯΄μ¬μ μ
μ μλ€μκ²λ λͺ¨λ κ²μ΄ ν©λ ₯νμ¬ μ μ μ΄λ£¨λλλΌ", // 28
|
| 256 |
+
"νλλμ΄ λ―Έλ¦¬ μμ μλ€μ λν κ·Έ μλ€μ νμμ λ³Έλ°κ² νκΈ° μνμ¬ λ―Έλ¦¬ μ νμ
¨μΌλ μ΄λ κ·Έλ‘ λ§μ νμ μ€μμ λ§μλ€μ΄ λκ² νλ € νμ¬μ΄λλΌ", // 29
|
| 257 |
+
"λ 미리 μ νμ κ·Έλ€μ λν λΆλ₯΄μκ³ λΆλ₯΄μ κ·Έλ€μ λν μλ‘λ€ νμκ³ μλ‘λ€ νμ κ·Έλ€μ λν μνλ‘κ² νμ
¨λλλΌ", // 30
|
| 258 |
+
"κ·Έλ°μ¦ μ΄ μΌμ λνμ¬ μ°λ¦¬κ° λ¬΄μ¨ λ§μ ν리μ λ§μΌ νλλμ΄ μ°λ¦¬λ₯Ό μνμλ©΄ λκ° μ°λ¦¬λ₯Ό λμ ν리μ", // 31
|
| 259 |
+
"μκΈ° μλ€μ μλΌμ§ μλνμκ³ μ°λ¦¬ λͺ¨λ μ¬λμ μνμ¬ λ΄μ£Όμ μ΄κ° μ΄μ° κ·Έ μλ€κ³Ό ν¨κ» λͺ¨λ κ²μ μ°λ¦¬μκ² μ£Όμμ§ μλνκ² λλ", // 32
|
| 260 |
+
"λκ° λ₯ν νλλκ»μ ννμ μλ€μ κ³ λ°ν리μ μλ‘λ€ νμ μ΄λ νλλμ΄μλ", // 33
|
| 261 |
+
"λκ° μ μ£ν리μ μ£½μΌμ€ λΏ μλλΌ λ€μ μ΄μλμ μ΄λ 그리μ€λ μμμλ κ·Έλ νλλ μ°νΈμ κ³μ μμ μ°λ¦¬λ₯Ό μνμ¬ κ°κ΅¬νμλ μμ μ΄λΌ", // 34
|
| 262 |
+
"λκ° μ°λ¦¬λ₯Ό 그리μ€λμ μ¬λμμ λμΌλ¦¬μ νλμ΄λ κ³€κ³ λ λ°ν΄λ κΈ°κ·Όμ΄λ μ μ μ΄λ μνμ΄λ μΉΌμ΄λ΄", // 35
|
| 263 |
+
"κΈ°λ‘λ λ° μ°λ¦¬κ° μ’
μΌ μ£Όλ₯Ό μνμ¬ μ£½μμ λΉνκ² λλ©° λμ΄λΉν μκ°μ΄ μ¬κΉμ λ°μλμ΄λ€ ν¨κ³Ό κ°μΌλλΌ", // 36
|
| 264 |
+
"κ·Έλ¬λ μ΄ λͺ¨λ μΌμ μ°λ¦¬λ₯Ό μ¬λνμλ μ΄λ‘ λ§λ―Έμμ μ°λ¦¬κ° λλν μ΄κΈ°λλλΌ", // 37
|
| 265 |
+
"λ΄κ° νμ νλ
Έλ μ¬λ§μ΄λ μλͺ
μ΄λ μ²μ¬λ€μ΄λ κΆμΈμλ€μ΄λ νμ¬ μΌμ΄λ μ₯λ μΌμ΄λ λ₯λ ₯μ΄λ", // 38
|
| 266 |
+
"λμμ΄λ κΉμμ΄λ λ€λ₯Έ μ΄λ€ νΌμ‘°λ¬Όμ΄λΌλ μ°λ¦¬λ₯Ό μ°λ¦¬ μ£Ό 그리μ€λ μμ μμ μλ νλλμ μ¬λμμ λμ μ μμΌλ¦¬λΌ" // 39
|
| 267 |
+
];
|
| 268 |
+
|
| 269 |
+
const verseDisplay = document.getElementById('verse-display');
|
| 270 |
+
const prevButton = document.getElementById('prev-verse');
|
| 271 |
+
const nextButton = document.getElementById('next-verse');
|
| 272 |
+
const rateSlider = document.getElementById('rate-slider'); // μλ μ‘°μ μ¬λΌμ΄λ
|
| 273 |
+
let currentVerseIndex = 0; // νμ¬ λ³΄μ¬μ£Όλ μ μ μΈλ±μ€ (0λΆν° μμ)
|
| 274 |
+
|
| 275 |
+
|
| 276 |
+
// νΉμ μ μ νλ©΄μ νμνλ ν¨μ
|
| 277 |
+
function displayVerse(index) {
|
| 278 |
+
// μΈλ±μ€ λ²μ μ ν¨μ± κ²μ¬
|
| 279 |
+
if (index < 0 || index >= verses.length) {
|
| 280 |
+
return;
|
| 281 |
+
}
|
| 282 |
+
|
| 283 |
+
currentVerseIndex = index; // νμ¬ μ μΈλ±μ€ μ
λ°μ΄νΈ
|
| 284 |
+
|
| 285 |
+
// κΈ°μ‘΄ μ λ΄μ© μ§μ°κΈ°
|
| 286 |
+
verseDisplay.innerHTML = '';
|
| 287 |
+
|
| 288 |
+
// μ μ 컨ν
μ΄λ μμ± λ° νμ±ν ν΄λμ€ μΆκ°
|
| 289 |
+
const verseDiv = document.createElement('div');
|
| 290 |
+
verseDiv.classList.add('verse', 'active');
|
| 291 |
+
|
| 292 |
+
// μ λ²νΈ μΆκ°
|
| 293 |
+
const verseNumberSpan = document.createElement('span');
|
| 294 |
+
verseNumberSpan.classList.add('verse-number');
|
| 295 |
+
verseNumberSpan.textContent = `λ‘λ§μ 8μ₯ ${currentVerseIndex + 1}μ `;
|
| 296 |
+
verseDiv.appendChild(verseNumberSpan);
|
| 297 |
+
|
| 298 |
+
// μ ν
μ€νΈλ₯Ό λμ΄μ°κΈ° κΈ°μ€μΌλ‘ λΆν
|
| 299 |
+
const parts = verses[currentVerseIndex].split(' ');
|
| 300 |
+
|
| 301 |
+
// ννΈ μ 체λ₯Ό λ΄λ 컨ν
μ΄λ μμ± (Flexboxλ‘ μ€λ°κΏ λ΄λΉ)
|
| 302 |
+
const partsContainer = document.createElement('div');
|
| 303 |
+
partsContainer.classList.add('parts-container');
|
| 304 |
+
|
| 305 |
+
// κ° ννΈλ³ λΈλ‘ μμ± λ° partsContainerμ μΆκ°
|
| 306 |
+
parts.forEach(partText => {
|
| 307 |
+
// λΉ λ¬Έμμ΄μ΄ μλ κ²½μ°μλ§ ννΈ μμ±
|
| 308 |
+
if (partText.trim() !== '') {
|
| 309 |
+
const partDiv = document.createElement('div');
|
| 310 |
+
partDiv.classList.add('part');
|
| 311 |
+
// ν
μ€νΈ λ΄μ© μ€μ μ μλ€ κ³΅λ°± μ κ±°
|
| 312 |
+
partDiv.textContent = partText.trim();
|
| 313 |
+
|
| 314 |
+
// ν΄λ¦ μ΄λ²€νΈ 리μ€λ μΆκ°
|
| 315 |
+
partDiv.addEventListener('click', function() {
|
| 316 |
+
|
| 317 |
+
// --- ν΄λ¦λ ννΈ νμ΄λΌμ΄νΈ (νμ λ
Έλμ) ---
|
| 318 |
+
// νμ¬ μ μ λͺ¨λ ννΈ λΈλ‘ κ°μ Έμ€κΈ° (partsContainer λ΄μμ μ°Ύμ)
|
| 319 |
+
const allPartsInVerse = partsContainer.querySelectorAll('.part');
|
| 320 |
+
|
| 321 |
+
// λͺ¨λ ννΈμ active ν΄λμ€ μ κ±° (ν΄λ¦ μ λ μνλ‘ λλλ¦Ό)
|
| 322 |
+
allPartsInVerse.forEach(p => {
|
| 323 |
+
p.classList.remove('active');
|
| 324 |
+
});
|
| 325 |
+
|
| 326 |
+
// ν΄λ¦λ ννΈμ active ν΄λμ€ μΆκ° (λ
ΈλμμΌλ‘ λ³κ²½)
|
| 327 |
+
this.classList.add('active');
|
| 328 |
+
// --- ν΄λ¦λ ννΈ νμ΄λΌμ΄νΈ λ ---
|
| 329 |
+
|
| 330 |
+
|
| 331 |
+
// --- TTS λ‘μ§ ---
|
| 332 |
+
const textToSpeak = this.textContent; // ν΄λ¦λ ννΈμ ν
μ€νΈ κ°μ Έμ€κΈ°
|
| 333 |
+
|
| 334 |
+
// λΉ λ¬Έμμ΄μ΄κ±°λ TTS μ§μ μ νλ©΄ μ€ν μ ν¨
|
| 335 |
+
if (textToSpeak && 'speechSynthesis' in window) {
|
| 336 |
+
// νμ¬ μ¬μ μ€μΈ μμ±μ΄ μλ€λ©΄ μ€μ§
|
| 337 |
+
window.speechSynthesis.cancel();
|
| 338 |
+
|
| 339 |
+
// μμ± ν©μ± κ°μ²΄ μμ±
|
| 340 |
+
const utterance = new SpeechSynthesisUtterance(textToSpeak);
|
| 341 |
+
|
| 342 |
+
// μΈμ΄ μ€μ (νκ΅μ΄)
|
| 343 |
+
utterance.lang = 'ko-KR';
|
| 344 |
+
|
| 345 |
+
// μ¬λΌμ΄λ κ°μΌλ‘ μλ μ€μ
|
| 346 |
+
utterance.rate = parseFloat(rateSlider.value);
|
| 347 |
+
|
| 348 |
+
|
| 349 |
+
// ν
μ€νΈ μ½κΈ° μμ
|
| 350 |
+
window.speechSynthesis.speak(utterance);
|
| 351 |
+
} else if (!('speechSynthesis' in window)) {
|
| 352 |
+
console.warn("Text-to-speech is not supported in this browser.");
|
| 353 |
+
}
|
| 354 |
+
// --- TTS λ‘μ§ λ ---
|
| 355 |
+
});
|
| 356 |
+
|
| 357 |
+
// partsContainerμ ννΈ λΈλ‘ μΆκ°
|
| 358 |
+
partsContainer.appendChild(partDiv);
|
| 359 |
+
}
|
| 360 |
+
});
|
| 361 |
+
|
| 362 |
+
// μ 컨ν
μ΄λμ partsContainer μΆκ°
|
| 363 |
+
verseDiv.appendChild(partsContainer);
|
| 364 |
+
|
| 365 |
+
// νλ©΄μ μ 컨ν
μ΄λ μΆκ°
|
| 366 |
+
verseDisplay.appendChild(verseDiv);
|
| 367 |
+
|
| 368 |
+
// λ€λΉκ²μ΄μ
λ²νΌ μν μ
λ°μ΄νΈ
|
| 369 |
+
prevButton.disabled = currentVerseIndex === 0; // 첫 μ μ΄λ©΄ μ΄μ λ²νΌ λΉνμ±ν
|
| 370 |
+
nextButton.disabled = currentVerseIndex === verses.length - 1; // λ§μ§λ§ μ μ΄λ©΄ λ€μ λ²νΌ λΉνμ±ν
|
| 371 |
+
// TTS μ¬μ μ€μ§ (μ μ ν μ λΆνμν μ리 λ°©μ§)
|
| 372 |
+
if ('speechSynthesis' in window) {
|
| 373 |
+
window.speechSynthesis.cancel();
|
| 374 |
+
}
|
| 375 |
+
}
|
| 376 |
+
|
| 377 |
+
// μ΄μ μ λ²νΌ ν΄λ¦ μ΄λ²€νΈ
|
| 378 |
+
prevButton.addEventListener('click', () => {
|
| 379 |
+
displayVerse(currentVerseIndex - 1);
|
| 380 |
+
});
|
| 381 |
+
|
| 382 |
+
// λ€μ μ λ²νΌ ν΄λ¦ μ΄λ²€νΈ
|
| 383 |
+
nextButton.addEventListener('click', () => {
|
| 384 |
+
displayVerse(currentVerseIndex + 1);
|
| 385 |
+
});
|
| 386 |
+
|
| 387 |
+
|
| 388 |
+
// νμ΄μ§ λ‘λ μ 첫 λ²μ§Έ μ νμ
|
| 389 |
+
document.addEventListener('DOMContentLoaded', () => {
|
| 390 |
+
displayVerse(currentVerseIndex);
|
| 391 |
+
});
|
| 392 |
+
|
| 393 |
+
</script>
|
| 394 |
+
</body>
|
| 395 |
+
</html>
|