← All examples

JavaScript Developer & QA disneyplus.com

Disney+: log player events

Developer aid: prints player events such as play, pause, ended and rate changes to the console.

Code to copy

// Developer aid: log video player lifecycle events to the console
function hookVideo(v) {
  if (v.dataset.jzHooked) { return; }
  v.dataset.jzHooked = '1';
  ['play', 'pause', 'ended', 'ratechange', 'volumechange'].forEach(function (ev) {
    v.addEventListener(ev, function () {
      console.log('[Disney+]', ev, 't=' + Math.round(v.currentTime) + 's', 'rate=' + v.playbackRate);
    });
  });
}
document.querySelectorAll('video').forEach(hookVideo);
var logObs = new MutationObserver(function () {
  document.querySelectorAll('video').forEach(hookVideo);
});
logObs.observe(document.documentElement, { childList: true, subtree: true });

How to use this example

  1. Copy the code with the button above.
  2. Install JustZix (2 minutes) and open the extension on the target page.
  3. Add a new rule matching that page.
  4. Paste the code into the rule's JavaScript panel and save — it runs on every page visit.

Rate this example

No ratings yet — be the first.

Does this example work?

Snippets are useless without somewhere to paste them.

JustZix takes 2 minutes to install and runs your code on every matching page. No account, no payment.

Download free See use cases