Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- textContent
- 디자인표준계약서
- 구매
- 구독
- form
- 클립스튜디오구독
- 소수점이하버리기
- 배열
- 클립스튜디오
- 애플
- 클립스튜디오할인
- 맥에서 게임
- querySelectAll
- rectangleapp
- 게임 맥에서
- 객체
- js
- Math.floor();
- 맥
- 프프로로그그래래밍
- 클튜구매
- 서평단
- https://rectangleapp.com
- 클립스튜디오구매
- 클튜
- 클튜구독
- 아이패드
- 별찍어보기
- 형변환
- 클튜할인
Archives
- Today
- Total
duedue
toggle 본문
토글 메뉴 공부
보여지는 결과는 같다.
1번
<style>
body{
text-decoration: none;
}
.nav {
visibility: hidden;
width: 100%;
height: 0vh;
margin-top: 10px;
background: linear-gradient(180deg, rgb(91, 50, 241) 0%, rgb(236, 149, 48) 100%);
transition: all 0.3s;
}
.h {
cursor: pointer;
border-bottom: 1px solid lightcyan;
padding: 10px 15px;
border: transparent;
border-radius: 10px;
color: #333;
}
</style>
</head>
<body>
<div class="h" onclick="openNav()">x</div>
<ul class="nav">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
<script>
function openNav() {
if (document.querySelector('.nav').style.visibility === "hidden") { console.log("dd");
document.querySelector('.nav').style.visibility = 'visible';
document.querySelector('.nav').style.height = '80vh';
document.querySelector('.h').textContent = 'O';
} else { console.log("ss");
document.querySelector('.nav').style.visibility = 'hidden';
document.querySelector('.nav').style.height = '0vh';
document.querySelector('.h').textContent = 'x';
}
}
</script>
</body>
2번
<style>
body{
text-decoration: none;
}
.nav {
visibility: hidden;
width: 100%;
height: 0vh;
margin-top: 10px;
background: linear-gradient(180deg, rgb(91, 50, 241) 0%, rgb(236, 149, 48) 100%);
transition: all 0.3s;
}
.h {
cursor: pointer;
border-bottom: 1px solid lightcyan;
padding: 10px 15px;
border: transparent;
border-radius: 10px;
color: #333;
}
</style>
</head>
<body>
<div class="h" onclick="openNav()">O</div>
<ul class="nav">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
<script>
function openNav() {
const nav = document.querySelector('.nav');
const h = document.querySelector('.h');
if (nav.style.visibility === "hidden") { console.log("dd");
nav.style.visibility = 'visible';
nav.style.height = '80vh';
h.textContent = 'X';
} else { console.log("ss");
nav.style.visibility = 'hidden';
nav.style.height = '0vh';
h.textContent = 'O';
}
}
</script>
</body>
3번
<style>
.nav {
visibility: hidden;
width: 100%;
height: 0vh;
margin-top: 10px;
background: linear-gradient(180deg, rgb(91, 50, 241) 0%, rgb(236, 149, 48) 100%);
transition: all 0.3s;
}
.act {
visibility: visible;
height: 60vh;
}
.h {
cursor: pointer;
background-color: skyblue;
padding: 10px 15px;
border: transparent;
border-radius: 10px;
color: #fff;
}
</style>
</head>
<body>
<div class="h">x</div>
<ul class="nav">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
<script>
const h = document.querySelector('.h');
const nav = document.querySelector('.nav');
h.addEventListener('click', () => {
console.log(h);
console.log(nav);
nav.classList.toggle('act');
})
</script>
참고
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=curlicu&logNo=40139919116
https://goddino.tistory.com/129
https://developer.mozilla.org/ko/docs/Web/API/EventTarget/addEventListener
https://codepen.io/Ellen27/pen/Pozajya
한 군데 더 있었는데 못찾겠다.
혹시 잘못된 게 있다면 댓글 부탁드린다.