Örnek kod

Oyun kodu

Üç küçük oyun parçası var: puan, bulma ve sayaç. Her biri bir HTML sayfada çalışır. Kodu kopyalayıp test sayfasında aç.

Puan

Her tıklamada puan bir artar. Oyun için en küçük hal budur: bir sayı tutulur ve bir olay onu değiştirir.

Test et
<p>Xal: <b id="score">0</b></p>
<button type="button" id="hit">Vur</button>
<script>
  let score = 0;
  const scoreNode = document.getElementById("score");
  document.getElementById("hit").addEventListener("click", () => {
    score += 1;
    scoreNode.textContent = String(score);
  });
</script>

Bul

Gizli sayı 2'dir. Üç düğmeden biri doğru cevabı yazar, diğerleri yeniden denemeyi söyler. Koşul burada başlar.

Test et
<p>1, 2 və ya 3 seç.</p>
<button type="button" data-n="1">1</button>
<button type="button" data-n="2">2</button>
<button type="button" data-n="3">3</button>
<p id="out"></p>
<script>
  const secret = 2;
  const out = document.getElementById("out");
  document.querySelectorAll("button").forEach((button) => {
    button.addEventListener("click", () => {
      const pick = Number(button.getAttribute("data-n"));
      out.textContent = pick === secret ? "Düzdür" : "Yenə cəhd et";
    });
  });
</script>

Sayaç

Başla düğmesi 10'dan geri sayar ve sıfırda durur. Sayım açıkken düğme kapanır, ikinci kez başlamaz.

Test et
<p>Vaxt: <b id="time">10</b></p>
<button type="button" id="start">Başla</button>
<script>
  const start = document.getElementById("start");
  const time = document.getElementById("time");
  start.addEventListener("click", () => {
    let left = 10;
    start.disabled = true;
    const timer = setInterval(() => {
      left -= 1;
      time.textContent = String(left);
      if (left === 0) clearInterval(timer);
    }, 1000);
  });
</script>

Büyük oyun

Beş soru, puan ve yeniden başla. Doğru cevap 10 puan getirir. Sorular bitince düğmeler kapanır. Bütün sayfa bir dosyadır. .html diye kaydet ve aç.

Test et
<!DOCTYPE html>
<html lang="az">
<head>
  <meta charset="utf-8">
  <title>Quiz</title>
  <style>
    body { font-family: sans-serif; background: #0f172a; color: #e2e8f0; margin: 0; }
    main { max-width: 560px; margin: 32px auto; padding: 0 16px; }
    button { margin: 6px 6px 0 0; padding: 10px 14px; border: 0; border-radius: 8px; background: #0284c7; color: #fff; }
  </style>
</head>
<body>
<main>
  <p>Xal: <b id="score">0</b></p>
  <h1 id="ask"></h1>
  <div id="choices"></div>
  <p id="out"></p>
  <button type="button" id="again">Yenidən</button>
</main>
<script>
  const quiz = [
    { q: "Python nədir?", options: ["Brauzer", "Proqramlaşdırma dili", "Şəkil formatı"], answer: 1 },
    { q: "HTML nə üçündür?", options: ["Səhifənin quruluşu", "Cədvəlin parolu", "Telefonun batareyası"], answer: 0 },
    { q: "SQL nəyə sual verir?", options: ["Ekranın rənginə", "Klaviaturaya", "Verilənlərə"], answer: 2 },
    { q: "Bash nədir?", options: ["Şəkil redaktoru", "Əmr dili", "Cədvəl proqramı"], answer: 1 },
    { q: "CSS nəyi deyir?", options: ["Faylın parolunu", "Telefonun nömrəsini", "Səhifənin görünüşünü"], answer: 2 },
  ];
  let index = 0;
  let score = 0;
  const ask = document.getElementById("ask");
  const choices = document.getElementById("choices");
  const out = document.getElementById("out");
  const scoreNode = document.getElementById("score");

  function show() {
    choices.innerHTML = "";
    out.textContent = "";
    if (index >= quiz.length) {
      ask.textContent = "Bitdi";
      out.textContent = "Xal: " + score + " / " + (quiz.length * 10);
      return;
    }
    const item = quiz[index];
    ask.textContent = item.q;
    item.options.forEach((option, optionIndex) => {
      const button = document.createElement("button");
      button.type = "button";
      button.textContent = option;
      button.addEventListener("click", () => pick(optionIndex));
      choices.append(button);
    });
  }

  function pick(optionIndex) {
    const item = quiz[index];
    if (!item) return;
    if (optionIndex === item.answer) {
      score += 10;
      out.textContent = "Düzdür";
    } else {
      out.textContent = "Səhv";
    }
    scoreNode.textContent = String(score);
    choices.querySelectorAll("button").forEach((button) => { button.disabled = true; });
    index += 1;
    setTimeout(show, 600);
  }

  document.getElementById("again").addEventListener("click", () => {
    index = 0;
    score = 0;
    scoreNode.textContent = "0";
    show();
  });

  show();
</script>
</body>
</html>

Ayrıntılı bilgi

Nibras Code sayfasındaki oyun kodu bölümü, web sayfalarına etkileşim katan üç küçük parçadan oluşur: puan sayma, gizli rakam bulma ve geri sayım zamanlayıcısı. Her bir parça tek bir HTML sayfasında çalışır ve tarayıcıda doğrudan sonuç gösterir. Bu kısa örnekler, web programlamanın temellerini öğrenmek isteyenler için faydalı bir materyal sunar.

İnsanlar web sayfası hazırlarken veya basit etkileşimli öğeler eklerken bu tür küçük kod parçalarına ihtiyaç duyarlar. Temel mantık, tarayıcı betiklerinin düğme tıklamaları veya zaman aralıkları gibi olaylara yanıt vermesidir. Sayfa metni dinamik olarak güncellenir ve kullanıcı eylemleri ekranda doğrudan yansıtılır.

Bu materyali kullanmak için kodu kopyalayıp test sayfasında açmak yeterlidir. Dosyayı herhangi bir metin düzenleyicide kaydedip tarayıcıda çalıştırmak mümkündür. Nibras Arapça ve sitedeki diğer önerilen bölümler daha fazla içerik arayanlar için mevcuttur. Öğrenme sürecini basit tutmak amacıyla her örnek ayrı ayrı sunulmaktadır.

Nasıl kullanılır

  1. Sayfadan istediğiniz oyun kodu parçasını seçin.
  2. Kopyala düğmesini kullanarak metni hafızaya alın.
  3. Kodu kendi test sayfanızdaki dosyaya yerleştirin.
  4. Sonucu test etmek için dosyayı tarayıcıda açın.

Nerede işe yarar

Sık sorulan sorular

Bu oyun kodu nerede çalışır?

Her parça tek bir HTML sayfasında çalışır. Kodu kopyalayıp herhangi bir test sayfasında veya tarayıcıda doğrudan deneyebilirsiniz.

Gizli rakam oyununda doğru cevap nedir?

Gizli rakam 2'dir. Üç düğmeden biri doğru cevabı yazar, diğerleri ise tekrar denemeyi belirten mesaj gösterir.

Zamanlayıcı ne kadar süreyi geri sayar?

Zamanlayıcı başlat düğmesine basıldığında 10'dan geri sayar ve süre bittiğinde durur; sayım sürerken düğme devre dışı kalır.