diff options
Diffstat (limited to 'tvix/docs/mdbook-extra.js')
-rw-r--r-- | tvix/docs/mdbook-extra.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tvix/docs/mdbook-extra.js b/tvix/docs/mdbook-extra.js new file mode 100644 index 000000000000..bff412e69eb2 --- /dev/null +++ b/tvix/docs/mdbook-extra.js @@ -0,0 +1,24 @@ +"use strict" + +function main() { + document.removeEventListener("DOMContentLoaded", main, false) + + // NOTE: this is a hacky solution but should do the job for making a + // listenable audio link + function playAudio(evt) { + evt.preventDefault() + var audio = document.createElement("audio") + audio.addEventListener("ended", function() { audio.delete() }, false) + audio.addEventListener("loadeddata", function() { audio.play() }, false) + audio.src = evt.target.href + audio.load() + } + + var audios = document.querySelectorAll("a[href^=\"data:audio/\"]") + Array.prototype.forEach.call(audios, function setupAudio(elem) { + elem.setAttribute("role", "button") + elem.addEventListener("click", playAudio, false) + }) +} + +document.addEventListener("DOMContentLoaded", main, false) |