๋ก๊ทธ์ธ ๋น๋ฐ๋ฒํธ ํ์ธํ๋ ๋ฐฉ๋ฒ์ ๋ํด์ ์์๋ณด๊ฒ ์ต๋๋ค. ๋ก๊ทธ์ธ ๋๋ ์ ๋ ฅ ํผ(input)์ ๋น๋ฐ๋ฒํธ(password)์ ๊ฒฝ์ฐ ๋ณํ ์ฒ๋ฆฌ๊ฐ ๋์ด์์ด ์์ต๋๋ค. toggle ๋ฒํผ์ผ๋ก ๋น๋ฐ๋ฒํธ๋ฅผ ๋ฐ๋ก ํ์ธํ๋ฉด์ ์ ๋ ฅํ๋ ๋ฐฉ๋ฒ์ ์ฝ๋๋ฅผ ๋ณด๊ณ ์ค๋ช ํด ๋๋ฆด๊ฒ์.
๋ก๊ทธ์ธ ๋น๋ฐ๋ฒํธ ํ์ธ ์ฝ๋
CSS ์ฝ๋
.password-box {
position: relative;
width: 250px;
}
.password-box input[type="password"],
.password-box input[type="text"] {
width: 100%;
padding-right: 40px;
}
.toggle-password {
position: absolute;
top: 50%;
right: 10px;
transform: translateY(-50%);
cursor: pointer;
font-size: 18px;
color: #888;
}
CSSHTML ์ฝ๋
<div class="password-box">
<input type="password" id="password" placeholder="๋น๋ฐ๋ฒํธ ์
๋ ฅ">
<span class="toggle-password" onclick="togglePassword()">๐๏ธ</span>
</div>
HTMLJavaScript ์ฝ๋
function togglePassword() {
const pwInput = document.getElementById("password");
const toggleIcon = document.querySelector(".toggle-password");
if (pwInput.type === "password") {
pwInput.type = "text";
toggleIcon.textContent = "๐"; // ๋ ๊ฐ๋ฆฌ๋ ์ด๋ชจ์ง
} else {
pwInput.type = "password";
toggleIcon.textContent = "๐๏ธ"; // ๋ ์ด๋ชจ์ง
}
}
JavaScript์์ ์ฝ๋ ์คํ ๋ฐ ์ค๋ช
๐๏ธ
- ์ ์คํ ์์ ๋ฅผ ๋ณด๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก ๋ณํ๋ก ํ๊ธฐ๊ฐ ๋์ง๋ง, ๋ ๋ชจ์ ํด๋ฆญ ์ ๋ณํ๊ฐ ์ ์์ ์ผ๋ก ํ๊ธฐ ๋ฉ๋๋ค.
- ์ด ์์ ์ ํต์ฌ์ ๋ ๋ชจ์์ UI์ ๋ฐฐ์น ๋ถ๋ถ๊ณผ ๋ ๋ชจ์ ์์ด์ฝ ํด๋ฆญ ์ ํจ๊ณผ๋ฅผ ์ฃผ๋ JavaScript ๋ถ๋ถ์ ๋๋ค.
- ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ์ดํด๊ฐ ๋์์ง๋ฉด, ํด๋น ๊ธฐ๋ฅ์ ๋ณํํด์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํฉ๋๋ค.
- JavaScript togglePassword() ํจ์ ๋ถ๋ถ์ ์์ธํ ํ์ธํด ๋ณด์๋ฉด ๋ฉ๋๋ค.