← All examples

JavaScript Media

Click-to-play embedded videos

Replaces heavy video iframes with a light button that loads the player only when clicked.

Code to copy

// Replace heavy video iframes with a click-to-play placeholder.
document.querySelectorAll('iframe[src]').forEach(function (frame) {
  if (!/player|video|embed|youtube|vimeo/i.test(frame.src)) return;
  var src = frame.src;
  var ph = document.createElement('button');
  ph.textContent = 'Click to load video';
  ph.style.cssText = 'width:' + (frame.width || 560) + 'px;height:' +
    (frame.height || 315) + 'px;max-width:100%;background:#222;color:#fff;' +
    'border:0;cursor:pointer;font-size:16px;';
  ph.addEventListener('click', function () {
    var f = document.createElement('iframe');
    f.src = src;
    f.width = frame.width || 560;
    f.height = frame.height || 315;
    f.allow = 'autoplay; fullscreen; picture-in-picture';
    ph.replaceWith(f);
  });
  frame.replaceWith(ph);
});

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