Twitter Promotion Deleter

Twitterの広告削除

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name    Twitter Promotion Deleter
// @namespace    http://tampermonkey.net/
// @version    0.1
// @description    Twitterの広告削除
// @author    Chippppp
// @license    MIT
// @match    https://twitter.com/home*
// @grant    none
// ==/UserScript==

(() => {
    "use strict";

    const deletePromotions = () => {
        for (let promotion of document.getElementsByClassName("r-1bwzh9t r-4qtqp9 r-yyyyoo r-1q142lx r-ip8ujx r-1d4mawv r-dnmrzs r-bnwqim r-1plcrui r-lrvibr")) {
            promotion.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement.style.display = "none";
        }
    };

    const observer = new MutationObserver(records => {
        deletePromotions();
    });
    observer.observe(document.body, {
        childList: true,
        subtree: true
    });
})();