diff options
author | Sam Potts <sam@potts.es> | 2018-05-06 16:18:10 +1000 |
---|---|---|
committer | Sam Potts <sam@potts.es> | 2018-05-06 16:18:10 +1000 |
commit | 1491b017a03fc6bd5aec7b5420fd8a036c9fb729 (patch) | |
tree | 1d128617fe41749c74884a68676059641f167dc1 /src/js | |
parent | 165515009266a5dc0b625cef26cf6ba1a80bb12e (diff) | |
download | plyr-1491b017a03fc6bd5aec7b5420fd8a036c9fb729.tar.lz plyr-1491b017a03fc6bd5aec7b5420fd8a036c9fb729.tar.xz plyr-1491b017a03fc6bd5aec7b5420fd8a036c9fb729.zip |
Setup multiple players
Diffstat (limited to 'src/js')
-rw-r--r-- | src/js/plyr.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/js/plyr.js b/src/js/plyr.js index acf1ce19..18577f5c 100644 --- a/src/js/plyr.js +++ b/src/js/plyr.js @@ -1244,6 +1244,29 @@ class Plyr { static loadSprite(url, id) { return utils.loadSprite(url, id); } + + /** + * Setup multiple instances + * @param {*} selector + * @param {object} options + */ + static setup(selector, options = {}) { + let targets = null; + + if (utils.is.string(selector)) { + targets = Array.from(document.querySelectorAll(selector)); + } else if (utils.is.nodeList(selector)) { + targets = Array.from(selector); + } else if (utils.is.array(selector)) { + targets = selector.filter(i => utils.is.element(i)); + } + + if (utils.is.empty(targets)) { + return null; + } + + return targets.map(t => new Plyr(t, options)); + } } export default Plyr; |