Have you ever been in a situation where you come across an image on the web, you choose to open it in a new tab to look at it in detail, but you don't see anything? This is probably because the image is black with transparent parts. Take an image like this:
If you are on Chrome (not tested in other browsers), and you open the image in a new tab, you will not see much of anything because the image is black with a transparent background. This can become a bit frustrating when you need to zoom in on these images.
Luckily, now there's a solution! 😁 Open up your browser console on an image webpage, and enter the following snippet:
function c(o){document.body.style.background="rgb("+o.rgb.map(Math.round).join(",")+")"}s=document.createElement("script"),s.src="https://cdnjs.cloudflare.com/ajax/libs/jscolor/2.0.4/jscolor.min.js",document.body.appendChild(s),document.body.innerHTML+="<input class=\"jscolor {onFineChange:'c(this)'}\"style='position:absolute;right:0;top:0'value='0e0e0e'type='search'autocomplete='off'>";
Using this, you will get a handy-dandy color picker in the top-right of your screen that will live-update the background color of the page as you change it in the picker. This is to make it easier to view the images that blend in. Let's pull apart this program:
function c(o){document.body.style.background="rgb("+o.rgb.map(Math.round).join(",")+")"}
- A function to set the webpage background based on ajscolor
object (more on that later).s=document.createElement("script")
- Create a new<script>
element.s.src="https://cdnjs.cloudflare.com/ajax/libs/jscolor/2.0.4/jscolor.min.js"
- Set thesrc
of the<script>
element to the library we want to load.document.body.appendChild(s)
- Append the<script>
element to the document, loading the resource.document.body.innerHTML+="<input class=\"jscolor {onFineChange:'c(this)'}\"style='position:absolute;right:0;top:0'value='0e0e0e'type='search'autocomplete='off'>
- Add a customjscolor
input element to create the color picker. Set it up to callc()
every time the color updates.
As seen in the verbose version, the snippet uses the library jscolor
for the color picker.
I hope this small snippet helps you!
Top comments (1)
If you don't want to use the browser's console every time, for convenience, you can create a bookmark on the bookmark bar and use the url "javascript:" + code from the article + "void(0);".
This way, you get a place to click any time you need that feature.