그래서 id는 Home-Popular에 대해 각각 개별적으로 선택할 수 있습니다. 감사 할만한 설명을 남길 수 있다면 왜 그렇게하는지 잘 모르겠습니다. 향후 코드를 최적화하기위한 팁과 함께 도움을 주시면 감사하겠습니다. 감사합니다.
<html>
<head>
<script src="script.js"defer></script>
<link rel="stylesheet" href="cults.css">
<title> follow the cult </title>
</head>
<h1 style="text-align:center"> CULT </h1>
<body>
<ul class="tabs">
<li data-tab-target="#Home" class="active tab"> Home </li>
<li data-tab-target="#Men" class="tab"> Men </li>
<li data-tab-target="#Women" class="tab"> Women </li>
<li data-tab-target="#New Arrivals" class="tab"> New Arrivals </li>
<li data-tab-target="#Popular" class="tab"> Popular </li>
</ul>
<br></br>
<div class="tab-content">
<div id="Home" data-tab-content class="active">
<h1>home</h1>
<p> Welcome Home</p>
</div>
<div id="Men"data-tab-content>
<h1>Men</h1>
<p> yang</p>
</div>
<div id="Women" data-tab-content>
<h1>Women</h1>
<p> ying</p>
</div>
<div id="New Arrivals"data-tab-content>
<h1>New</h1>
<p> new shit</p>
</div>
<div id="Popular"data-tab-content>
<h1>The Orbit</h1>
<p> most popular</p>
</div>
</body>
</html>
'css 문서'
[data-tab-content] {
display: none;
}
.active[data-tab-content] {
display: block;
}
body {
padding:0;
margin:0;
}
.tabs{
display: flex;
justify-content: space-around;
list-style-type: none;
margin: 0;
padding: 0;
border: 3px solid black;
}
.tab {
cursor :pointer;
padding: 10px;
}
.tabs.active {
background-color:#CCC;
}
.tabs:hover{
background-color:#AAA;
}
.tab-content {
margin-left:20px;
margin-right:20px;
}
'script'
const tabs = document.querySelectorAll('[data-tab-target]')
const tabContents = document.querySelectorAll('[data-tab-content]')
tabs.forEach(tab => {
tab.addEventListener('click',() => {
const target = document.querySelector(tab.dataset.tabTarget )
tabContents.forEach(tabContent => {
tabContent.classlist.remove'active'))
})
tab.forEach(tab => {
tab.classlist.remove'active'))
})
tab.classList.add('active')
target.classlist.add('active')
})
})
향후 코드를 최적화하기위한 팁과 함께 도움을 주시면 감사하겠습니다. 감사합니다.