diff options
Diffstat (limited to 'src/js/plugins')
-rw-r--r-- | src/js/plugins/vimeo.js | 11 | ||||
-rw-r--r-- | src/js/plugins/youtube.js | 10 |
2 files changed, 19 insertions, 2 deletions
diff --git a/src/js/plugins/vimeo.js b/src/js/plugins/vimeo.js index 48d46037..4b604337 100644 --- a/src/js/plugins/vimeo.js +++ b/src/js/plugins/vimeo.js @@ -51,7 +51,16 @@ const vimeo = { gesture: 'media', }; const params = utils.buildUrlParams(options); - const id = utils.parseVimeoId(player.media.getAttribute('src')); + + // Get the source URL or ID + let source = player.media.getAttribute('src'); + + // Get from <div> if needed + if (utils.is.empty(source)) { + source = player.media.getAttribute(this.config.attributes.embed.id); + } + + const id = utils.parseVimeoId(source); // Build an iframe const iframe = utils.createElement('iframe'); diff --git a/src/js/plugins/youtube.js b/src/js/plugins/youtube.js index 6b4a54bd..d66b98b7 100644 --- a/src/js/plugins/youtube.js +++ b/src/js/plugins/youtube.js @@ -87,8 +87,16 @@ const youtube = { return; } + // Get the source URL or ID + let source = player.media.getAttribute('src'); + + // Get from <div> if needed + if (utils.is.empty(source)) { + source = player.media.getAttribute(this.config.attributes.embed.id); + } + // Replace the <iframe> with a <div> due to YouTube API issues - const videoId = utils.parseYouTubeId(player.media.getAttribute('src')); + const videoId = utils.parseYouTubeId(source); const id = utils.generateId(player.provider); const container = utils.createElement('div', { id }); player.media = utils.replaceElement(container, player.media); |