
Security News
Critical Security Vulnerability in React Server Components
React disclosed a CVSS 10.0 RCE in React Server Components and is advising users to upgrade affected packages and frameworks to patched versions now.
media-play-enabler
Advanced tools
Enables video play programmatically on modern browsers that require user input events
Enables video play programmatically on modern browsers that require user input events
On most mobile device browsers, calling video.play() is only allowed from inside gesture events such as onclick or touchend.
iOS Safari, iOS Chrome
On most desktop modern browsers, calling video.play() is only allowed after the user has done any explicit interaction with the DOM, such as click or mousedown somewhere at least once.
Events such as mouseover are not enough.
Desktop Chrome >= 66, Android Chrome, Windows Edge
On these browsers, calling video.play() works without any interaction only if the video is either muted or the video does not have an audio track.
iOS Safari, iOS Chrome
On the rest, it doesn't work even without audio.
Desktop Chrome, Android Chrome, Windows Edge
touchstart or a desktop mousedown event to document in order to enable the first video.play() of a blank video.video source, not the video element..canPlay() to receive a promise to know if a video can be played..videoElement.play(), .videoElement.pause() to control the video and .videoElement.src = 'movie.mp4' to change videos.npm install media-play-enabler
import { MediaPlayEnabler } from 'media-play-enabler'
// Set the parent element for injecting
mediaPlayEnabler.parentElement = document.getElementById('insert-video')
mediaPlayEnabler.canPlay().then((isPlayable) => {
if (isPlayable) {
// Change movies by changing the source
mediaPlayEnabler.videoElement.src = 'movie1.mp4'
mediaPlayEnabler.videoElement.play()
mediaPlayEnabler.videoElement.src = 'movie2.mp4'
mediaPlayEnabler.videoElement.play()
mediaPlayEnabler.videoElement.src = 'movie3.mp4'
mediaPlayEnabler.videoElement.play()
} else {
// Tell user to touch the screen
}
})
See API Docs
FAQs
Enables video play programmatically on modern browsers that require user input events
We found that media-play-enabler demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
React disclosed a CVSS 10.0 RCE in React Server Components and is advising users to upgrade affected packages and frameworks to patched versions now.

Research
/Security News
We spotted a wave of auto-generated “elf-*” npm packages published every two minutes from new accounts, with simple malware variants and early takedowns underway.

Security News
TypeScript 6.0 will be the last JavaScript-based major release, as the project shifts to the TypeScript 7 native toolchain with major build speedups.