Skip to content
Share plugin for video.js
JavaScript CSS HTML
Branch: master
Clone or download
Latest commit c418f81 Jun 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
lang Initial commit May 25, 2017
scripts fix: move commonjs upper Mar 15, 2019
src Add a runtime check for the absence of window object (#21) Jun 17, 2019
test Initial commit May 25, 2017
.editorconfig Initial commit May 25, 2017
.gitignore Initial commit May 25, 2017
.npmignore Initial commit May 25, 2017
.nvmrc chore: upgrade jsdoc to 3.5.5 Feb 5, 2018
.travis.yml Updates the plugin to make it work with videojs 7. (#10) Aug 21, 2018 3.2.1 Jun 17, 2019 Initial commit May 25, 2017
LICENSE Initial commit May 25, 2017 Optional Embed Input (#14) Nov 8, 2018
jsdoc.json Initial commit May 25, 2017
package-lock.json 3.2.1 Jun 17, 2019
package.json 3.2.1 Jun 17, 2019


Share plugin for video.js. Allows user to copy video url / embed code and share video to social networks.

List of supported social networks: Facebook, Twitter, Google Plus, LinkedIn, VK, Odnoklassniki, Supported messengers: Messenger, Telegram, Whatsapp, Viber.

Sharing functioonality provided by vanilla-sharing library. Copying to clipboard is done via clipboard.js.

npm Build Status David David

Table of Contents

Version Support

This is an advanced plugin and due to that it works on videojs versions 6+ see here.


npm install --save videojs-share


To include videojs-share on your website or web application, use any of the following methods.

<script> Tag

This is the simplest case. Get the script in whatever way you prefer and include the plugin after you include video.js, so that the videojs global is available.

<script src="//path/to/video.min.js"></script>
<script src="//path/to/videojs-share.min.js"></script>


When using with Browserify, install videojs-share via npm and require the plugin as you would any other module.

var videojs = require('video.js');

// The actual plugin function is exported by this module, but it is also
// attached to the `Player.prototype`; so, there is no need to assign it
// to a variable.


When using with RequireJS (or another AMD library), get the script in whatever way you prefer and require the plugin as you normally would:

require(['video.js', 'videojs-share'], function(videojs) {
  var player = videojs('my-video');


Plugin initialization

var player = videojs('my-video');

var shareOptions = {
  socials: ['fb', 'tw', 'reddit', 'gp', 'messenger', 'linkedin', 'telegram', 'whatsapp', 'viber', 'vk', 'ok', 'mail'],

  url: window.location.href,
  title: 'videojs-share',
  description: 'video.js share plugin',
  image: '',

  // required for Facebook and Messenger
  fbAppId: '12345',
  // optional for Facebook
  redirectUri: window.location.href + '#close',

  // optional for VK
  isVkParse: true,
  // optinal embed code
  embedCode : '<iframe src="' + window.location.href + '" width="560" height="315" frameborder="0" allowfullscreen></iframe>'

You can’t perform that action at this time.