u
This commit is contained in:
parent
0f7635329d
commit
82bf8e4193
44
js/tabs.js
Normal file
44
js/tabs.js
Normal file
@ -0,0 +1,44 @@
|
||||
// tabs.js
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
// Pobierz wszystkie linki zakładek i sekcje zawartości
|
||||
const tabLinks = document.querySelectorAll('.tab-link');
|
||||
const tabContents = document.querySelectorAll('.tab-content');
|
||||
|
||||
// Funkcja do przełączania zakładek
|
||||
function switchTab(event) {
|
||||
event.preventDefault();
|
||||
|
||||
// Usuń klasę 'active' ze wszystkich linków zakładek
|
||||
tabLinks.forEach(link => link.classList.remove('active'));
|
||||
|
||||
// Usuń klasę 'active' ze wszystkich sekcji zawartości
|
||||
tabContents.forEach(content => content.classList.remove('active'));
|
||||
|
||||
// Dodaj klasę 'active' do klikniętego linku
|
||||
const clickedLink = event.currentTarget;
|
||||
clickedLink.classList.add('active');
|
||||
|
||||
// Pobierz ID sekcji, którą należy aktywować (z atrybutu data-tab)
|
||||
const tabId = clickedLink.getAttribute('data-tab');
|
||||
|
||||
// Aktywuj odpowiednią sekcję zawartości
|
||||
const activeContent = document.getElementById(tabId);
|
||||
if (activeContent) {
|
||||
activeContent.classList.add('active');
|
||||
}
|
||||
}
|
||||
|
||||
// Dodaj nasłuchiwanie zdarzeń do każdego linku zakładki
|
||||
tabLinks.forEach(link => {
|
||||
// Obsługa kliknięcia myszą
|
||||
link.addEventListener('click', switchTab);
|
||||
|
||||
// Obsługa klawiatury (Enter lub Spacja)
|
||||
link.addEventListener('keydown', (event) => {
|
||||
if (event.key === 'Enter' || event.key === ' ') {
|
||||
event.preventDefault();
|
||||
switchTab(event);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Reference in New Issue
Block a user