Skip to content

Releases: sampotts/plyr

v2.0.0

22 Aug 03:01
Compare
Choose a tag to compare

This version contains several potential _breaking changes_:

  • setup() has been reverted to pre v1.8.0 behaviour; meaning it will return the instance rather than the element. This is because the reference to the instance is no longer added to the original element (see below).
  • The reference to the plyr instance is now added to the media element rather than original container. This is because if a container with multiple children was passed to setup() the references to all instances would have been added to the container, creating issues. I would recommend using the return value from setup() or the new get() method to access the instance.
  • Players will always be wrapped in their own div now - this makes setup() and destroy() cleaner. This may break any custom styling based on DOM position.
  • Players no longer seek to 0 on 'ended' - this is to fix a bug with Microsoft Edge as it triggers 'ended' on media change for whatever reason. They'll never change ;-)

And some other changes and bug fixes:

  • New get() method on the global plyr object to get all instances inside a container
  • New API methods:
    • getOriginal() to get the original, unmodified element plyr was setup on (<video>, <audio> or empty <div> for YouTube and Vimeo)
    • getContainer() to get the players outer wrapper element
    • getMedia() to get the players media element (<video>, <audio> or empty <div> for YouTube and Vimeo)
    • getEmbed() to access the YouTube or Vimeo API directly
    • getType() to get the type of the player
    • isReady() to determine if an instance has completed setup and necessary APIs are loaded (for YouTube / Vimeo)
    • on() to provide an easy way to listen to events
    • stop() to, you guessed it, stop the player
  • destroy() now works correctly for YouTube and Vimeo (fixes #272)
  • New destroyed event when destroy() has completed (original element is passed as event.target)
  • Default volume is now 10 (max) rather than 5
  • Sprite is only loaded once (fixes #259)
  • Fixes for Vimeo post message bugs on source change or destroy (fixes #318)
  • Save caption state in storage (fixes #311)
  • Added keyboard shortcuts to the current focused player (with keyboardShortcuts boolean option to disable) (fixes #309)
  • Fix for captions bug (fixes #332)
  • Change to AMD (fixes #298)

v1.8.12

23 Jul 01:12
Compare
Choose a tag to compare
  • Vimeo keyboard focus fix (Fixes #317)
  • Fix for Vimeo on basic support devices

v1.8.11

23 Jul 00:45
Compare
Choose a tag to compare
  • Fix for keyboard navigation on Vimeo (Fixes #317)
  • Fix for bug introduced in v1.8.9 related to additional controls
  • Vimeo API upgrade
  • Fix for YouTube bug introduced in v1.8.9
  • Added support for passing array to .setup() (Fixes #319)

v1.8.10

21 Jul 12:00
Compare
Choose a tag to compare
  • Fix for seek issues introduced in v1.8.9

v1.8.9

21 Jul 11:26
Compare
Choose a tag to compare
  • Fix for fullscreen not being defined (Fixes #295)
  • Fix for multiline captions (Fixes #314)
  • Clean up of type checks and fix for restart() (Fixes #315)
  • Fix for MEDIA_ERR_SRC_NOT_SUPPORTED when calling .source() API method

v1.8.8

10 Jul 11:03
Compare
Choose a tag to compare
  • Added getCurrentTime API method (fixes #292)
  • Fix for !hideControls on touch devices (fixes #303)

v1.8.3

25 Jun 13:41
Compare
Choose a tag to compare
  • Disabled iPad support for YouTube and Vimeo due to iOS limitations with iFrame playback
  • Fixed IE11 icon loading (fixes #269)
  • Updated screenshot (fixes #281)
  • Added WordPress plugin (fixes #239)
  • Added Neos plugin
  • Added HLS, Shaka and dash.js examples (see #235 for more)
  • Improvements for controls hiding and showing on touch devices

v1.8.0

09 Jun 08:50
Compare
Choose a tag to compare
  • _(Important)_ setup() now returns the element Plyr was setup on rather than the plyr object. This means var player = plyr.setup()[0]; would now be var player = plyr.setup()[0].plyr;. This improves support for React and other virtual dom frameworks as mentioned in #254
  • Fixed using a relative URL for iconUrl in IE (fixes #269)

v1.7.0

07 Jun 11:35
Compare
Choose a tag to compare
  • SASS cleanup (fixes #265)
  • Docs tidy up to help quick start (fixes #253)
  • Fix for issues with data attribute options passing (fixes #257)
  • Removed the requirement for a wrapper div to setup Plyr and removed the dependency on the plyr classname as a JS hook. By default it will now look for <video>, <audio> and [data-type] elements. If you are just calling setup() with a <div class="plyr"> you may want to give it a good test after upgrading. You can probably remove the wrapper div. The reason behind this is to make setup easier for newcomers and prevent the styling being used on unsupported players (because the plyr classname was used as a CSS and JS hook - which isn't ideal)
  • Renamed the 'docs' folder to demo to avoid confusion. The readme is the docs after all.

v1.6.16

23 May 21:34
Compare
Choose a tag to compare
  • Always hide standard controls (Fixes #225)
  • Fix for Tooltips overflowing (fixes #230)