<iframe> click to load

Reduce some unnecessary resource consumption by suspend the <iframe>s with larger area. NOT lazyload; click a button instead anywhere in the whole <iframe> element so one won't mis-click.

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

ئاپتورى
Crystal-RainSlide
بۈگۈن قاچىلانغىنى
0
جەمئىي قاچىلانغىنى
276
باھا نومۇرى
1 0 0
نەشرى
1.3
قۇرۇلغان ۋاقتى
2020-10-05
يېڭىلانغان ۋاقتى
2020-12-09
Size
2.4 KB
ئىجازەتنامىسى
يوق
قوللايدىغىنى
بارلىق بېكەتلەر

It's main purpose is to reduce some unnecessary resource consumption caused by <iframe>s, not block every <iframe>-based share buttons (add some social-blocking rulesets into your AdBlocker to block the share buttons) or visualize the existence of every <iframe>s. So expect it to ignore lots of <iframe>s but only seems to suspend the embed YouTube videos.

will ignore <iframe>s that:

  • has srcdoc attribute
  • doesn't have src attribute
  • the value of its src attribute is not a valid URL
  • the URL of its src attribute:
    • has a origin that is "null", and/or
    • has a protocol that is not "https:" or "http:"
    • (in other words, is "about:blank", "javascript:*" or "data:*")
  • narrower than 72px, or generally smaller than 128x128px

Just modify the code to change the behavior. If you need a lazyload version, but can't code it yourself, I'm glad to say now you can do this by just set loading=lazy attribute to the <iframe> (and <img>) elements, for the newest modern browsers:

And there are some lazyload libs for reference, for older browsers. Here is one of them: