ARTLUNG LAB Share

December 2024. Original from January 2018

Quick Overlay

Formerly known as Quick jQuery Overlay.

The Quick Overlay bookmarklet

Why?

From 2018:

Sometimes I have a need to overlay an image over top of an existing website. And very often jQuery is available. And so, here's a little chunk of code that creates an overlay.

Create your own overlay with a backgroundImage of your own along with a background size and you can paste it into developer tools when you're doing development. Adjust the opacity to your liking.

jQuery is no longer required.

Source

(function (){if (document.getElementById('my-overlay')) {
    document.getElementById('my-overlay').remove();
} else {
    let div = document.createElement('div');
    div.id = 'my-overlay';
    div.style.width = '100%';
    div.style.height = '100%';
    // adjust this with your own image, perhaps 'url(https://example.com/image.jpg)'
    div.style.backgroundImage = 'conic-gradient(from 45deg,#ff0000 25%,#ffffff,pink 0 50%,#00ff00 0 75%,#0000ff 0)';
    // size this with the dimensions (and units) of your image
    div.style.backgroundSize = '600px 450px';
    div.style.backgroundRepeat = 'no-repeat';
    div.style.backgroundColor = 'rgba(0,0,0,0.2)';
    div.style.backgroundPosition = '50% 50%';
    div.style.position = 'fixed';
    div.style.opacity = '0.5';
    div.style.zIndex = '99999';
    div.style.cursor = 'all-scroll';
    div.style.top = '0';
    div.style.left = '0';
    div.style.pointerEvents = 'none';
    // Optionally, some text
    div.innerText = 'FPO';
    div.style.display = 'flex';
    div.style.justifyContent = 'center';
    div.style.alignItems = 'center';
    // impact color white
    div.style.color = 'white';
    div.style.fontFamily = 'sans-serif';
    div.style.fontSize = '8rem';
    div.style.fontWeight = 'bold';
    // user select none
    div.style.userSelect = 'none';
    div.style['-webkit-user-select'] = 'none';
    document.body.appendChild(div);
}})();

Source (compressed)

javascript:%28function%28%29%7Bif%28document.getElementById%28%27my-overlay%27%29%29%7Bdocument.getElementById%28%27my-overlay%27%29.remove%28%29%3B%7Delse%7Blet%20div%3Ddocument.createElement%28%27div%27%29%3Bdiv.id%3D%27my-overlay%27%3Bdiv.style.width%3D%27100%25%27%3Bdiv.style.height%3D%27100%25%27%3Bdiv.style.backgroundImage%3D%27conic-gradient%28from%2045deg%2C%23ff0000%2025%25%2C%23ffffff%2Cpink%200%2050%25%2C%2300ff00%200%2075%25%2C%230000ff%200%29%27%3Bdiv.style.backgroundSize%3D%27600px%20450px%27%3Bdiv.style.backgroundRepeat%3D%27no-repeat%27%3Bdiv.style.backgroundColor%3D%27rgba%280%2C0%2C0%2C0.2%29%27%3Bdiv.style.backgroundPosition%3D%2750%25%2050%25%27%3Bdiv.style.position%3D%27fixed%27%3Bdiv.style.opacity%3D%270.5%27%3Bdiv.style.zIndex%3D%2799999%27%3Bdiv.style.cursor%3D%27all-scroll%27%3Bdiv.style.top%3D%270%27%3Bdiv.style.left%3D%270%27%3Bdiv.style.pointerEvents%3D%27none%27%3Bdiv.innerText%3D%27FPO%27%3Bdiv.style.display%3D%27flex%27%3Bdiv.style.justifyContent%3D%27center%27%3Bdiv.style.alignItems%3D%27center%27%3Bdiv.style.color%3D%27white%27%3Bdiv.style.fontFamily%3D%27sans-serif%27%3Bdiv.style.fontSize%3D%278rem%27%3Bdiv.style.fontWeight%3D%27bold%27%3Bdiv.style.userSelect%3D%27none%27%3Bdiv.style%5B%27-webkit-user-select%27%5D%3D%27none%27%3Bdocument.body.appendChild%28div%29%3B%7D%7D%29%28%29%3B