Перейти к содержимому
GitHub

<svelte:window>

<svelte:window onevent={handler} />
<svelte:window bind:prop={value} />

Элемент <svelte:window> позволяет добавлять обработчики событий к объекту window, не беспокоясь об их удалении при уничтожении компонента или проверке существования window при серверном рендеринге.

Этот элемент может находиться только на верхнем уровне вашего компонента — он не может быть внутри блока или другого элемента.

<script>
  function handleKeydown(event) {
    alert(`нажата клавиша ${event.key}`);
  }
</script>

<svelte:window onkeydown={handleKeydown} />

Вы также можете привязываться к следующим свойствам:

  • innerWidth — ширина области просмотра (включая прокрутку)
  • innerHeight — высота области просмотра (включая прокрутку)
  • outerWidth — общая ширина окна браузера
  • outerHeight — общая высота окна браузера
  • scrollX — горизонтальная прокрутка (доступно для записи)
  • scrollY — вертикальная прокрутка (доступно для записи)
  • online — аналог window.navigator.onLine (состояние подключения к сети)
  • devicePixelRatio — соотношение физических пикселей к логическим (плотность пикселей)

Все свойства, кроме scrollX и scrollY, доступны только для чтения.

<svelte:window bind:scrollY={y} />