From 66969f1a65ca5bddd128cc18eb724a7f9271d753 Mon Sep 17 00:00:00 2001 From: Sam Potts Date: Sun, 13 Sep 2015 09:56:59 +1000 Subject: Fix for multiple YouTube instances (Fixes #114) --- src/js/plyr.js | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'src/js') diff --git a/src/js/plyr.js b/src/js/plyr.js index d69ce5f3..3ddb85b1 100644 --- a/src/js/plyr.js +++ b/src/js/plyr.js @@ -1,6 +1,6 @@ // ========================================================================== // Plyr -// plyr.js v1.3.5 +// plyr.js v1.3.6 // https://github.com/selz/plyr // License: The MIT License (MIT) // ========================================================================== @@ -12,7 +12,7 @@ /*global YT*/ // Globals - var fullscreen, config; + var fullscreen, config, callbacks = { youtube: [] }; // Default config var defaults = { @@ -903,8 +903,19 @@ // Load the API _injectScript('https://www.youtube.com/iframe_api'); + // Add callback to queue + callbacks.youtube.push(function() { _YTReady(id, container); }); + // Setup callback for the API - window.onYouTubeIframeAPIReady = function () { _YTReady(id, container); }; + window.onYouTubeIframeAPIReady = function () { + for (var i = callbacks.youtube.length - 1; i >= 0; i--) { + // Fire callback + callbacks.youtube[i](); + + // Remove from queue + callbacks.youtube.splice(i, 1); + } + }; } } -- cgit v1.2.3