Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@framp
Last active November 4, 2020 14:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save framp/8a92887eb2232c11e8533a8423fccd9c to your computer and use it in GitHub Desktop.
Save framp/8a92887eb2232c11e8533a8423fccd9c to your computer and use it in GitHub Desktop.
// ==UserScript==
// @name Thank you NY Times
// @namespace nytimes.com
// @version 0.1
// @description Thank you NY Times
// @author You
// @match *://*.nytimes.com/*
// @grant none
// ==/UserScript==
const removeElem = [
() => document.getElementById("standalone-footer"),
() => document.getElementById("gateway-content"),
() => document.getElementById("site-content")?.parentNode?.nextSibling,
];
const resetClassName = [() => document.getElementById("site-content")?.parentNode?.parentNode];
const resetStyle = [() => document.getElementById("site-content")];
const removeElemCheck = removeElem.map(() => false);
const resetClassNameCheck = resetClassName.map(() => false);
const resetStyleCheck = resetStyle.map(() => false);
const checkExist = setInterval(() => {
removeElem.forEach((elem, index) => {
if (elem()) {
elem().remove();
removeElemCheck[index] = true;
}
});
resetClassName.forEach((elem, index) => {
if (elem()) {
elem().className = "";
resetStyleCheck[index] = true;
}
});
resetStyle.forEach((elem, index) => {
if (elem()) {
elem().style = "";
resetStyleCheck[index] = true;
}
});
if (removeElemCheck.every(Boolean) && resetClassNameCheck.every(Boolean) && resetStyleCheck.every(Boolean)) {
clearInterval(checkExist);
}
}, 100);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment