Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Never repeat ads
- // @namespace http://tampermonkey.net/
- // @version 1.4
- // @description Recursively hides all adverts ever seen before on facebook. able to leave open in a tab for it to work through large history prerequistie to ad block https://pastebin.com/vmaiA8jJ
- // @author You
- // @match https://www.facebook.com/adpreferences/advertisers/?entry_product=waist
- // @icon https://www.google.com/s2/favicons?domain=facebook.com
- // @updateURL https://pastebin.com/raw/rgZ1zD0u
- // @downloadURL https://pastebin.com/raw/rgZ1zD0u
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- let title = 'Never repeat ads';
- function userScript(){
- var reloadTimer;
- var stopPageCheck;
- function log(m) {
- console.warn(title, m);
- }
- function pageTimerLock() {
- if(window.location.href != 'https://www.facebook.com/adpreferences/advertisers/?entry_product=waist') {
- clearTimeout(stopPageCheck);
- clearTimeout(reloadTimer);
- log("Reload canceled");
- };
- }
- function getSpans(text) {
- return Array.from(document.querySelectorAll('span')).filter(e => {return e.innerHTML==text;});
- }
- function hide() {
- log('Hiding ads');
- getSpans('Hide Ads').forEach(e=>e.click());
- };
- function reload(){
- log('Refreshing page');
- location.reload();
- };
- if(getSpans('Hide Ads').length) {
- setTimeout(hide, 2000);
- reloadTimer = setTimeout(reload, 4000);
- } else {
- log('no ads to hide for now, checking later');
- reloadTimer = setTimeout(reload, 30000);
- };
- stopPageCheck = setInterval(pageTimerLock, 100);
- };
- try {
- userScript();
- } catch (e) {
- console.error(title, e);
- };
- ;
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement