Примеры кода

Код приложения

Три маленьких куска приложения: заметка, режим и сумма. Они отдельно от страницы игры. Скопируй каждый и открой на тестовой странице.

Заметка

Написанный текст добавляется в список, и поле очищается. Пустой текст не добавляется. Это маленький блокнот.

Проверить
<form id="note">
  <input id="text" type="text" placeholder="Qeyd">
  <button type="submit">Əlavə et</button>
</form>
<ul id="list"></ul>
<script>
  const form = document.getElementById("note");
  const text = document.getElementById("text");
  const list = document.getElementById("list");
  form.addEventListener("submit", (event) => {
    event.preventDefault();
    const value = text.value.trim();
    if (!value) return;
    const item = document.createElement("li");
    item.textContent = value;
    list.append(item);
    text.value = "";
  });
</script>

Режим

Одна кнопка переключает страницу между тёмным и светлым режимом. Состояние лежит в классе, вторая страница не открывается.

Проверить
<button type="button" id="mode">Tünd</button>
<p id="label">Rejim: açıq</p>
<script>
  const mode = document.getElementById("mode");
  const label = document.getElementById("label");
  mode.addEventListener("click", () => {
    const dark = document.body.classList.toggle("dark");
    document.body.style.background = dark ? "#0f172a" : "#f8fafc";
    document.body.style.color = dark ? "#e2e8f0" : "#0f172a";
    label.textContent = dark ? "Rejim: tünd" : "Rejim: açıq";
  });
</script>

Сумма

Складываются числа из двух полей. Текст, который не число, считается нулём. Результат виден после кнопки.

Проверить
<input id="a" type="number" value="2">
<input id="b" type="number" value="3">
<button type="button" id="add">Cəm</button>
<p id="sum"></p>
<script>
  document.getElementById("add").addEventListener("click", () => {
    const a = Number(document.getElementById("a").value) || 0;
    const b = Number(document.getElementById("b").value) || 0;
    document.getElementById("sum").textContent = String(a + b);
  });
</script>

Большое приложение

Список дохода и расхода. Если сумма не число, она не добавляется. Итог пишется отдельно. Список остаётся, когда страница закрывается. Сохрани файл как .html и открой.

Проверить
<!DOCTYPE html>
<html lang="az">
<head>
  <meta charset="utf-8">
  <title>Kassa</title>
  <style>
    body { margin: 0; font-family: sans-serif; background: #f8fafc; color: #0f172a; }
    main { max-width: 640px; margin: 28px auto; padding: 0 16px; }
    form { display: grid; grid-template-columns: 1fr 120px 140px auto; gap: 8px; }
    input, select { padding: 10px; border: 1px solid #cbd5e1; border-radius: 8px; font: inherit; }
    button { border: 0; border-radius: 8px; padding: 10px 12px; background: #0f766e; color: #fff; }
    table { width: 100%; border-collapse: collapse; margin-top: 16px; }
    td { padding: 8px 0; border-bottom: 1px solid #e2e8f0; }
    .out { color: #b91c1c; }
    @media (max-width: 700px) { form { grid-template-columns: 1fr; } }
  </style>
</head>
<body>
<main>
  <h1>Kassa</h1>
  <p>Qalıq: <b id="total">0</b></p>
  <form id="form">
    <input id="title" type="text" maxlength="80" placeholder="Ad" required>
    <input id="amount" type="number" step="0.01" placeholder="Məbləğ" required>
    <select id="kind">
      <option value="in">Gəlir</option>
      <option value="out">Xərc</option>
    </select>
    <button type="submit">Əlavə et</button>
  </form>
  <table>
    <tbody id="rows"></tbody>
  </table>
</main>
<script>
  const KEY = "nibras-cash";
  const form = document.getElementById("form");
  const rows = document.getElementById("rows");
  const total = document.getElementById("total");

  function load() {
    try {
      const saved = JSON.parse(localStorage.getItem(KEY) || "[]");
      return Array.isArray(saved) ? saved : [];
    } catch {
      return [];
    }
  }

  let items = load().filter((item) => item && typeof item.title === "string" && typeof item.amount === "number");

  function money(value) {
    return value.toFixed(2);
  }

  function balance() {
    return items.reduce((sum, item) => sum + (item.kind === "out" ? -item.amount : item.amount), 0);
  }

  function draw() {
    rows.innerHTML = "";
    items.forEach((item, index) => {
      const row = document.createElement("tr");
      const name = document.createElement("td");
      name.textContent = item.title;
      const amount = document.createElement("td");
      amount.textContent = (item.kind === "out" ? "-" : "+") + money(item.amount);
      amount.className = item.kind === "out" ? "out" : "";
      const remove = document.createElement("td");
      const button = document.createElement("button");
      button.type = "button";
      button.textContent = "Sil";
      button.addEventListener("click", () => {
        items.splice(index, 1);
        localStorage.setItem(KEY, JSON.stringify(items));
        draw();
      });
      remove.append(button);
      row.append(name, amount, remove);
      rows.append(row);
    });
    total.textContent = money(balance());
  }

  form.addEventListener("submit", (event) => {
    event.preventDefault();
    const title = document.getElementById("title").value.trim();
    const amount = Number(document.getElementById("amount").value);
    const kind = document.getElementById("kind").value;
    if (!title || !Number.isFinite(amount) || amount <= 0) return;
    items.push({ title, amount, kind });
    localStorage.setItem(KEY, JSON.stringify(items));
    form.reset();
    draw();
  });

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

Подробнее

Эта страница представляет собой раздел «Код приложения» на сайте nibrascode.com и содержит три небольшие части приложения, отделенные от игровой страницы. Здесь представлены функциональные элементы: заметка, режим и сумма. Каждый элемент имеет свою логику и позволяет решать определенные небольшие задачи.

Люди нуждаются в таких примерах, когда хотят добавить независимую функциональность на веб-страницы. Основная концепция заключается в создании динамических элементов на странице с помощью HTML, CSS и JavaScript. Скопировав код и открыв его на тестовой странице, можно напрямую увидеть и изучить принцип его работы.

Как пользоваться

  1. Выберите одну из трех небольших частей приложения, представленных на странице.
  2. Скопируйте код, нажав соответствующую кнопку над блоком кода.
  3. Разместите код на своей тестовой странице и запустите его.
  4. Проверьте результат, чтобы увидеть принцип работы приложения.

Где пригодится

Частые вопросы

Сколько частей входит в раздел кода приложения?

В этом разделе имеется три небольшие части приложения: заметка, режим и сумма. Каждая имеет свою структуру HTML и JavaScript.

Как можно протестировать коды?

Нужно скопировать каждый код и открыть его на тестовой странице. После этого вы сможете напрямую испытать функциональность элемента.

Как обрабатывается нечисловой текст в разделе суммы?

При подсчете суммы любой нечисловой текст в поле автоматически считается за ноль и не влияет на расчет.