NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name Facebook Clutter Remover // @namespace facebook_clutter_remover // @version 0.4 // @description Removes clutter from facebook home feed // @author navchandar // @match https://www.facebook.com/* // @match http://www.facebook.com/* // @run-at document-end // @license MIT // @grant none // @copyright 2020, navchandar (https://openuserjs.org/users/navchandar) // @homepage https://navchandar.github.io/ // @homepage https://github.com/navchandar/ // @homepageURL https://navchandar.github.io/ // @contributionURL https://paypal.me/navchandar // @contributionAmount $1.00 // @downloadURL https://openuserjs.org/install/navchandar/Facebook_Clutter_Remover.user.js // @updateURL https://openuserjs.org/meta/navchandar/Facebook_Clutter_Remover.meta.js // @supportURL https://openuserjs.org/scripts/navchandar/Facebook_Clutter_Remover/issues // @setupURL https://openuserjs.org/install/navchandar/Facebook_Clutter_Remover.user.js // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAACXBIWXMAAAsSAAALEgHS3X78AAABVklEQVRYw82XsQrCMBCGC0V9BUfp0tXNTVd9AAkFZ/sU+gi+iXRWwcGl4OggCo5dRToU3fQqV4kStXdpaQLfEnq5P+nl7mJZ9GEDLtAHPGSAc7ZV0qgDAgiAGLh/IcZvBNpoj3RHPhD9cPqNCG3Zp+IAIcPxJyGuRRpd4FyA84wzrpnbeVKg84wkjwin4J2rTsL5FXBhic7lmFAGps9c8AAskF1OG191z6lX7QYMP9YZEa7oW54QjJ1PFKc4ItgL2TBgCGihbRNYAmtgT7AP5OCLGQIaaN9jxk6cBaNLTK8bpIYC2tLckSgi9f2sZHkNZn/yyJQoIK2oz3JalIA5UYBHFXABTkh2jTrS3JUjoM8MIt0gfP0Ct0IBrhHXkJuIdAUEuqlYV4DQLUY6AiJV00otxysswVuGAN/IhqTylsyIptSIttyIh4kcmOOqnmZGPE5Lf54/AFauqgcSVxgpAAAAAElFTkSuQmCC // ==/UserScript== //Logo by Daniel Bruce https://iconscout.com/contributors/daniel-bruce (function () { 'use strict'; var elemsToRemove = [ '(//div[@role="navigation"]/div)[5]', '//div[@role="navigation"]/div/div', '(//div[@role="navigation"])[3]', '(//div[@role="complementary"]/div)[1]', '(//div[@role="complementary"]/div)[2]', '//div[@role="complementary"]/div/div', '//div[@role="complementary"]', '//div[@aria-label="Stories"]', '//div[@data-pagelet="VideoChatHomeUnit"]', '//*[text()="People you may know"]//..//..//..//..//div[contains(@style, "border")]', '(//*[@aria-label="Close"]//..//..//..//parent::div[contains(@style, "border")])[1]', '//*[text()="People you may know"]//..//..//..//..//..//div', '//*[text()="Friend Requests"]//..//..//..//..//..//div' ]; document.getElementsByXPath = function (t) { for (var e = new Array, n = this.evaluate(t, this, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null), s = 0; s < n.snapshotLength; s++) e.push(n.snapshotItem(s)); return e }; function waitForElementToDisplayWithXpath(t, e) { document.getElementByXPath = function (t) { var e = this.evaluate(t, this, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); if (e.snapshotLength > 0) return e.snapshotItem(0) }, null == document.getElementByXPath(t) ? setTimeout(function () { waitForElementToDisplayWithXpath(t, e) }, e) : console.log(t + " found") } waitForElementToDisplayWithXpath("//div[contains(@data-pagelet, 'Feed') or contains(@data-pagelet, 'page')]", 5000); waitForElementToDisplayWithXpath("//div[@role='navigation']", 5000); function rem(element) { element.remove() } function remove(xpath) { var elems = document.getElementsByXPath(xpath); if (elems != null && elems.length > 0) { elems.forEach(rem) } } function deleteElems() { elemsToRemove.forEach(remove); } setInterval(deleteElems, 3000); })();