Skip to main content
Controls fullscreen mode. Tries the container element first, then falls back to the media element. Required by FullscreenButton.

Import

import { fullscreen, selectFullscreen } from '@videojs/react';
// or
import { fullscreen, selectFullscreen } from '@videojs/html';

Usage

import { createPlayer, fullscreen } from '@videojs/react';

const Player = createPlayer({
  features: [fullscreen],
});

State

fullscreen
boolean
Whether the player is currently in fullscreen mode.
fullscreenAvailability
MediaFeatureAvailability
Whether fullscreen is supported in the current environment.Possible values:
  • 'available' — Ready to use
  • 'unavailable' — Could work but not ready yet
  • 'unsupported' — Platform can never support fullscreen

Actions

requestFullscreen()
() => Promise<void>
Enter fullscreen mode. Returns a promise that resolves when fullscreen is active.
exitFullscreen()
() => Promise<void>
Exit fullscreen mode. Returns a promise that resolves when fullscreen is exited.

Selector

Use selectFullscreen to subscribe to only the fullscreen slice of state. Returns undefined if the fullscreen feature is not configured.
import { selectFullscreen, usePlayer } from '@videojs/react';

function FullscreenButton() {
  const fs = usePlayer(selectFullscreen);
  if (!fs || fs.fullscreenAvailability !== 'available') return null;

  return (
    <button onClick={fs.fullscreen ? fs.exitFullscreen : fs.requestFullscreen}>
      {fs.fullscreen ? 'Exit fullscreen' : 'Fullscreen'}
    </button>
  );
}
Required by: FullscreenButton

Build docs developers (and LLMs) love