Instantly hide replies, self-replies, threads, and reposts on X.com home timeline
当前为
// ==UserScript==
// @name Hide Replies, Reposts, and Threads on X.com
// @namespace http://tampermonkey.net/
// @version 2.0
// @description Instantly hide replies, self-replies, threads, and reposts on X.com home timeline
// @author
// @match https://x.com/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
const tweetSelector = '[data-testid="cellInnerDiv"]';
const replySelector = 'div[aria-label^="Replying to"]'; // Targets all replies, including self-replies
const repostSelector = '[data-testid="socialContext"]'; // Targets reposts (retweets)
// Function to hide replies, self-replies, threads, and reposts
function hideContent() {
const tweets = document.querySelectorAll(tweetSelector);
tweets.forEach((tweet) => {
const isReply = tweet.querySelector(replySelector);
const isRepost = tweet.querySelector(repostSelector);
if (isReply || isRepost) {
tweet.style.display = 'none';
console.debug("Hidden a reply, self-reply, thread, or repost.");
}
});
}
// Run the hideContent function immediately and on DOM changes
function observeMutations() {
const observer = new MutationObserver(hideContent);
observer.observe(document.body, { childList: true, subtree: true });
}
// Initial execution to hide replies, threads, and reposts
window.addEventListener('load', () => {
hideContent(); // Run once on load
observeMutations(); // Observe changes for dynamic content
});
})();