Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

JS метод Element.requestFullscreen()

Загальний опис

requestFullscreen — це метод, який використовується для активації повноекранного режиму для конкретного елемента на вебсторінці. Виклик цього методу робить вибраний елемент (наприклад, відео, зображення або контейнер) повноекранним, займаючи весь екран пристрою користувача. Ця функція часто використовується для відеоплеєрів, презентацій, слайдшоу тощо, щоб покращити сприйняття контенту без зайвих елементів сторінки.

Для активації повноекранного режиму необхідно викликати requestFullscreen на DOM-елементі, який ми хочемо відобразити у цьому режимі. Наприклад:

document.getElementById("myElement").requestFullscreen();

Цей код намагається зробити елемент з ідентифікатором myElement повноекранним. Оскільки повноекранний режим може бути нав’язливим для користувача, браузери вимагають, щоб requestFullscreen викликався лише в результаті взаємодії користувача (наприклад, натискання кнопки). Якщо метод викликається автоматично або без взаємодії, браузер заблокує цей запит.

Метод повертає об’єкт Promise, що дозволяє обробляти результат успішного перемикання або помилку. Наприклад:

element.requestFullscreen().then(() => {
  console.log("Повноекранний режим увімкнено");
}).catch((error) => {
  console.log("Помилка при перемиканні у повноекранний режим:", error);
});

Під час роботи у повноекранному режимі можна відстежувати зміни стану за допомогою подій fullscreenchange і fullscreenerror. Подія fullscreenchange викликається кожного разу, коли браузер переходить або виходить із повноекранного режиму, дозволяючи відповідним чином оновлювати інтерфейс.

Слід зауважити, що requestFullscreen підтримується не у всіх браузерах і може потребувати префіксів (webkitRequestFullscreen для Safari або mozRequestFullScreen для старих версій Firefox). Щоб забезпечити кросбраузерну підтримку, можна створити функцію:

function goFullscreen(element) {
  if (element.requestFullscreen) {
    element.requestFullscreen();
  } else if (element.webkitRequestFullscreen) {
    element.webkitRequestFullscreen();
  } else if (element.mozRequestFullScreen) {
    element.mozRequestFullScreen();
  }
}

Таким чином, requestFullscreen дозволяє зручно інтегрувати повноекранний режим для будь-якого елемента, підвищуючи якість взаємодії користувача із сайтом або застосунком.

Порада:

Не використовуйте повноекранний режим для нав’язливих елементів, як-от реклами. Користувачі можуть заблокувати його через безпекові налаштування браузера, тому важливо, щоб ця функція використовувалася лише для покращення користувацького досвіду.

Порада:

Обробляйте помилки через catch, оскільки у випадку блокування запиту браузером або інших помилок корисно надати повідомлення користувачу про недоступність функції або можливу помилку.

Порада:

Щоб відстежити, коли користувач вийшов з повноекранного режиму, використовуйте подію fullscreenchange. Це дозволяє динамічно оновлювати інтерфейс або приховувати непотрібні елементи після завершення повноекранного режиму.

Синтаксис

element.requestFullscreen();

Параметри

Return

Promise

Повертає Promise, який виконується (resolve) у разі успішного переходу в режим повного екрану або відхиляється (reject), якщо перехід не вдалося здійснити.

Переглядачі

Переглядач

71

64

16.4

58

79

Переглядач

71

71

64

16.4

Переглядач

-

-

Приклади


Цей код створює галерею з чотирьох зображень. Коли користувач натискає на будь-яке зображення, воно розширюється до повноекранного режиму. Користувач також може вийти з повноекранного режиму, натискаючи на зображення. Кнопка "Переглянути на весь екран" забезпечує додаткову можливість для запуску повноекранного режиму для обраного зображення.

Цей приклад демонструє, як перейти в повноекранний режим для відео за допомогою кнопки. Якщо перехід вдався, в консолі з’являється повідомлення про успіх. У разі помилки – відображається повідомлення про проблему.

const videoElement = document.getElementById("myVideo");
const fullscreenButton = document.getElementById("enterFullscreen");

fullscreenButton.addEventListener("click", () => {
  videoElement.requestFullscreen().then(() => {
    console.log("Відео в повноекранному режимі");
  }).catch((error) => {
    console.error("Не вдалося увімкнути повний екран:", error);
  });
});

Цей приклад показує, як активувати повноекранний режим для галереї зображень. Під час роботи у повноекранному режимі текст кнопки змінюється на "Вийти з повного екрану". Якщо користувач вийде з повноекранного режиму, текст автоматично повертається на початковий.

const gallery = document.getElementById("imageGallery");
const fullscreenButton = document.getElementById("galleryFullscreen");

fullscreenButton.addEventListener("click", () => {
  gallery.requestFullscreen()
    .then(() => {
      fullscreenButton.textContent = "Вийти з повного екрану";
    })
    .catch((error) => {
      alert("Повноекранний режим недоступний.");
      console.error(error);
    });
});

document.addEventListener("fullscreenchange", () => {
  if (!document.fullscreenElement) {
    fullscreenButton.textContent = "Переглянути галерею на весь екран";
  }
});