23.js、jquery实现选项卡
下面是使用原生JavaScript和jQuery实现简单选项卡的示例代码:
原生JavaScript版本
HTML:
<div class="tabs">
<button class="tab" onclick="openTab(event, 'tab1')">Tab 1</button>
<button class="tab" onclick="openTab(event, 'tab2')">Tab 2</button>
</div>
<div id="tab1" class="tabcontent">
<h3>Tab 1</h3>
<p>This is tab 1 content.</p>
</div>
<div id="tab2" class="tabcontent">
<h3>Tab 2</h3>
<p>This is tab 2 content.</p>
</div>
JavaScript:
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("tab");
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";
}
jQuery版本
HTML:
<div class="tabs">
<button class="tab" data-tab="tab1">Tab 1</button>
<button class="tab" data-tab="tab2">Tab 2</button>
</div>
<div id="tab1" class="tabcontent">
<h3>Tab 1</h3>
<p>This is tab 1 content.</p>
</div>
<div id="tab2" class="tabcontent">
<h3>Tab 2</h3>
<p>This is tab 2 content.</p>
</div>
jQuery:
$('.tab').click(function() {
var tabContent = $(this).data('tab');
$('.tabcontent').hide();
$('.tab').removeClass('active');
$('#' + tabContent).show();
$(this).addClass('active');
});
在这两个示例中,我们有一个包含两个选项卡按钮的容器,以及两个选项卡内容区域。每个选项卡按钮都有一个点击事件,该事件会改变选项卡的样式以指示当前激活的选项卡,同时隐藏其他选项卡内容。
评论已关闭