HTML5 video auto-pause

Auto-pause any HTML5 videos. Will still preload.

  1. // ==UserScript==
  2. // @name HTML5 video auto-pause
  3. // @author Vincent Beers
  4. // @namespace http://vincent.tengudev.com/
  5. // @description Auto-pause any HTML5 videos. Will still preload.
  6. // @include *
  7. // @version 2014-04-14
  8. // ==/UserScript==
  9.  
  10. document.addEventListener('DOMContentLoaded',function() {
  11. var elems = document.querySelectorAll("video");
  12. console.log("HTML video auto pause: pausing all HTML5 videos on page load");
  13. for (var i = 0; i < elems.length; i++) {
  14. elems[i].pause();
  15. _tmpDaVince = elems[i]; //Probably an ugly hack, but it works at least
  16. _tmpDaVince.addEventListener("canplay", function(e) {
  17. console.log("HTML video auto pause: this video can play, so pausing");
  18. _tmpDaVince.pause();
  19. });
  20. }
  21. });
  22.  
  23.  
  24.  
  25. //Pause newly created video elements
  26. document.addEventListener("DOMNodeInserted", function(e) {
  27. var elem = e.target;
  28. if (elem.nodeName == "VIDEO") {
  29. elem.addEventListener("canplay", function(e) {
  30. console.log("HTML video auto pause: Video element was inserted after page load, pausing");
  31. elem.pause();
  32. });
  33. }
  34. }, false);