JS でネイティブの簡単なタブ機能を実装する方法
簡単なタブ機能を実装するには、JavaScriptとHTMLを組み合わせることができます。以下は、簡単なタブ実装の例です。
<!DOCTYPE html>
<html>
<head>
<style>
.tabcontent {
display: none;
}
</style>
</head>
<body>
<div class="tab">
<button class="tablinks" onclick="openTab(event, 'tab1')">Tab 1</button>
<button class="tablinks" onclick="openTab(event, 'tab2')">Tab 2</button>
<button class="tablinks" onclick="openTab(event, 'tab3')">Tab 3</button>
</div>
<div id="tab1" class="tabcontent">
<h3>Content for Tab 1</h3>
<p>This is the content for Tab 1.</p>
</div>
<div id="tab2" class="tabcontent">
<h3>Content for Tab 2</h3>
<p>This is the content for Tab 2.</p>
</div>
<div id="tab3" class="tabcontent">
<h3>Content for Tab 3</h3>
<p>This is the content for Tab 3.</p>
</div>
<script>
function openTab(evt, tabName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(tabName).style.display = "block";
evt.currentTarget.className += " active";
}
// 默认显示第一个选项卡
document.getElementById("tab1").style.display = "block";
document.getElementsByClassName("tablinks")[0].className += " active";
</script>
</body>
</html>
上の例ではtabcontentクラスはすべてのタブコンテンツを非表示にし、tablinksクラスはクリックイベントを処理するために使用されています。openTab関数はタブボタンがクリックされたときに発動し、クリックされたタブボタンに応じたタブコンテンツを表示し、クリックされたタブボタンをアクティブにします。そして、最初のタブを開いた状態で初期化してタブ機能を設定します。
タブのスタイルや内容は、必要に応じて変更できます。