• Stars
    star
    235
  • Rank 171,079 (Top 4 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created about 10 years ago
  • Updated almost 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A lightweight parallax background video solution that behaves like the CSS3 property, background-size: cover

PLEASE NOTE: My apologies but this repo is not currently maintianed by myself due to time constraints. I will happily accept and review PR's if anyone has any bug fixes or improvements (e.g. making it work with React).

backgroundVideo - v2.0.3

About

What is backgroundVideo?

backgroundVideo is a vanilla Javascript parallax (optional) plugin that turns your HTML5 <video> element into the CSS property background-size: cover, scaling to aspect ratio.

Working Examples

Within the examples folder, you will see demonstrations on how to implement the plugin.

Please note: parallax video is most effective on fixed position videos

Browser Support

HTML5 video supported browsers on desktop:

  • IE9+ / Edge
  • Chrome
  • Firefox
  • Safari
  • Opera

Please note this plugin will not work on mobile devices. This is due to restrictions on autoplay and performance. A responsive image is suggested as fallback.

How to use

For the most basic implementation, add the following to your html document:

<video class="bv-video"></video>

Ensuring that you are referencing the backgroundVideo.js file in your project, you can then instantiate the plugin by using the following Javascript:

const backgroundVideo = new BackgroundVideo('.bv-video', {
  src: [
    'MY/EXAMPLE/PATH/SAMPLE.mp4',
    'MY/EXAMPLE/PATH/SAMPLE.webm'
  ]
});

The src array is the only mandatory option.

You can also install and use via npm:

npm install background-video

Please see the examples for how to use the callback options and multiple videos on one page (Note: The examples are written in ES6/ES2015 so these will not work in older browsers e.g. Internet Explorer).

Options

Option Type Default Description
parallax.effect number 1.5 The intensity of the parallax effect (1: fixed). Number must be >= 1
preventContextMenu boolean false Prevents the user from viewing the context menu on the video (prevent right-click/secondary-click)
autoplayFallback string '' The poster image to show when auto-play capabilities are not available
onBeforeReady() callback null Run code before the video is ready
onReady() callback null Run code when the plugin has loaded - e.g. prevent loading flickers (see examples folder for useage)

Dependencies

None :)

License

Copyright (c) 2016 Sam Linnett

Licensed under the MIT license.