google-images-filter/script.user.js

59 lines
1.9 KiB
JavaScript
Raw Permalink Normal View History

2024-03-24 19:43:05 +00:00
// ==UserScript==
// @name Google Images filter
// @namespace https://fem.mint.lgbt/f.strw
// @version v1.01
2024-05-13 17:28:14 +00:00
// @description Block certain websites from appearing on Google Images search result.
2024-03-24 19:43:05 +00:00
// @author f.strw
2024-05-17 07:22:52 +00:00
// @match *://*.google.com/*
2024-03-24 19:43:05 +00:00
// @grant none
// ==/UserScript==
(function() {
'use strict';
function isButtonSelected(btnName) {
var buttons = document.querySelectorAll('div[jsname="bVqjv"]');
for (let btn of buttons) {
if (btn.hasAttribute('selected')) {
var btnText = btn.getElementsByTagName('span');
for (let text of btnText) {
if (text.textContent == btnName) {
return true;
}
}
}
}
return false;
}
function removeImages() {
if (isButtonSelected("Images")) {
var blockedDomains = ["redbubble.com", "etsy.com", "amazon.com", "amazon.de", "amazon.sg", "aliexpress.com", "teepublic.com", "badgeland.com", "ebay.com"];
var links = document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
for (var j = 0; j < blockedDomains.length; j++) {
if (links[i].href.indexOf(blockedDomains[j]) !== -1) {
var parentDiv = links[i].closest("div");
if (parentDiv && parentDiv.parentElement && parentDiv.parentElement) {
var grampsDiv = parentDiv.parentElement;
grampsDiv.remove();
}
2024-03-24 19:43:05 +00:00
}
}
}
}
}
function run() {
if (document.readyState === "complete" || document.readyState === "interactive") {
removeImages();
}
else {
setTimeout(run, 100);
}
}
run();
2024-03-24 19:43:05 +00:00
})();