1.0.7 • Published 5 years ago
@zachleat/video-radio-star v1.0.7
Video Radio Star
A lightweight web component helper for HTML5 videos. Intended for use with muted by default HTML5 videos.
Installation
npm install @zachleat/video-radio-star<video-radio-star>
<video src="./media/flower.mp4" muted controls controlsList="nodownload" playsinline disablePictureInPicture disableRemotePlayback></video>
<button type="button" data-play>Play</button>
<button type="button" data-pause>Pause</button>
<button type="button" data-mute>Toggle Mute</button>
</video-radio-star>
<script type="module" src="video-radio-star.js"></script>Features
Add classes for styling for:
radiostar-enhanced(component initialized)radiostar-mutedradiostar-playingradiostar-pausedradiostar-ended
Only start playing when the video is visible in the viewport with
data-visible-autoplay(via IntersectionObserver) Make sure you leave off theautoplayattribute in your markup.- Optionally conditional on media query, e.g.
data-visible-autoplay="(min-width: 48em) - The
mutedattribute is required when using this feature. - Don’t use the
autoplayattribute.
- Optionally conditional on media query, e.g.
- Automatically pause video when it scrolls out of view (via IntersectionObserver)
- Works as expected with
preload="none". - Sets
preload="none"when SaveData is true. - Disables
autoplaywhenprefers-reduced-motionis enabled - Use your own external mute/play/pause controls by adding
data-mute,data-play, ordata-pauserespectively to one or more<button>elements. - iOS note: as of iOS version 14.4, even if you use
<track default>iOS will not display captions by default unless it is enabled in Settings. Go to Settings -> Accessibility -> Subtitles & Captioning -> and make sure the Closed Captions + SDH option is selected.