Menu
Coddy logo textTech

Sekmeler

Coddy'nin HTML Journey'sinin JavaScript in Action bölümünün bir parçası — ders 1 / 27.

Sekmeler, kullanıcıların sayfadan ayrılmadan farklı içerik parçaları arasında geçiş yapmasını sağlar. Bölüm 4'te bunları HTML ve CSS ile oluşturmuştuk. Şimdi JavaScript kullanacağız. 

Anahtar noktalar:

  1. Öğeleri gizlemek ve göstermek için display özelliğini (none / block) kullanırız.
  2. Kullanıcı bir sekmeye tıkladığında, fonksiyonu çağırırız ve sekmenin ID'sini iletiriz.
  1. Fonksiyonun içinde, tüm sekme içeriklerini gizlemek için <strong>querySelectorAll</strong> + <strong>forEach</strong> kullanıyoruz.
  2. Son olarak, ID ile eşleşen olanı gösteriyoruz.
<div class="tabs">
  <button class="tab" onclick="openTab('services')">Services</button>
  <button class="tab" onclick="openTab('contact')">Contact</button>
</div>

<div id="services" class="tab-content">Our services are listed here.</div>
<div id="contact" class="tab-content" style="display:none;">Contact us at contact@example.com.</div>

<script>
  function openTab(tabId) {
    // Tüm sekme içeriklerini gizle
    document.querySelectorAll('.tab-content').forEach(el => el.style.display = 'none');
    // Seçilen sekmeyi göster
    document.getElementById(tabId).style.display = 'block';
  }
</script>
challenge icon

Görev

Kolay

Sekmelerin çalışmasını sağlayan JavaScript fonksiyonunu zaten yazdık. Göreviniz: 

  1. Her sekme düğmesine onclick özniteliğini ekleyin, böylece bir sekmeye tıklandığında doğru içerik görüntülenir
  2. openTab() fonksiyonunu çağırın.
  3. Sekme içeriğinin id değerini (home, about veya contact) parametre olarak geçirin.

Kendin dene

<!DOCTYPE html>
<html>
<head>
  <title>Simple Tabs Example</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <div class="tabs">
    <!-- Each button calls the function and passes the tab's ID -->
    <button class="tab" >Home</button>
    <button class="tab" >About</button>
    <button class="tab" >Contact</button>
  </div>

  <!-- By default, only "Home" is visible -->
  <div id="home" class="tab-content">Welcome to the homepage!</div>
  <div id="about" class="tab-content" style="display:none;">Learn more about us here.</div>
  <div id="contact" class="tab-content" style="display:none;">Get in touch with us.</div>

  <script src="script.js"></script>
</body>
</html>
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

JavaScript in Action bölümündeki tüm dersler