您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
View more replies and remove useless sections from twitter
当前为
- // ==UserScript==
- // @name Twitter: view more replies and remove useless sections
- // @description View more replies and remove useless sections from twitter
- // @author MK
- // @namespace max44
- // @homepage https://greasyfork.org/en/users/309172-max44
- // @match *://twitter.com/*
- // @match *://mobile.twitter.com/*
- // @icon https://www.google.com/s2/favicons?domain=twitter.com
- // @version 1.7.1
- // @license MIT
- // @require https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js
- // @grant none
- // @run-at document-idle
- // ==/UserScript==
- (function () {
- 'use strict';
- const config = {childList: true, subtree: true};
- /*setTimeout(function () {
- if (preview != null) {
- }
- }, 3000);*/
- const rootCallback = function (mutationsList, observer) {
- //==== ENGLISH INTERFACE
- //Show more
- $( "div[role='button'][tabindex='0'] > div > div > div > span:contains('Show replies')" ).click(); //"Show replies" button
- $( "div[role='button'][tabindex='0'] > div > div > span:contains('Show more replies')" ).click(); //"Show more replies" button
- $( "div[role='button'][tabindex='0'] > div > span > span:contains('Show')" ).click(); //"Show additional replies, including those that may contain offensive content" button
- //Hide useless sections
- $( "aside[aria-label='Who to follow']" ).parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Who to follow')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At anybody's profile - hide header "Who to follow", then 3 suggestions, "Show more" and divider
- $( "div[aria-label='Timeline: Trending now']" ).parent().parent().parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Trends for you')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At 'explore' page
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Topics to follow')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At anybody's profile
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Suggested Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At 'topics' page
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Discover new Lists')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Expand your timeline with Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- $( "span[aria-label^='Recommended Topic:'] > span > span" ).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().hide(); //At the newsfeed
- $( "div[aria-label='Open app']" ).parent().hide(); //At any tweet on mobile browser
- $( "div[data-testid='inlinePrompt'] > h1[role='heading'] > span > span > span:contains('Concerned about your digital security?')" ).parent().parent().parent().parent().parent().parent().parent().hide().next().hide(); //At the newsfeed
- //-
- //$( "article span:contains('Promoted')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide();
- //$( "span:contains('Promoted by')" ).parent().parent().parent().parent().hide().next().hide().next().hide();
- //$( "span:contains('Promoted Tweet')" ).parent().parent().parent().hide();
- //$( "span:contains('Promoted')" ).parent().parent().parent().parent().hide();
- //$( "div[aria-label='Set as not interested']" ).parent().parent().parent().parent().parent().parent().parent().hide();
- //==== UKRAINIAN INTERFACE
- //Show more
- $( "div[role='button'][tabindex='0'] > div > div > div > span:contains('Показати відповіді')" ).click(); //"Show replies" button
- $( "div[role='button'][tabindex='0'] > div > div > span:contains('Показати більше відповідей')" ).click(); //"Show more replies" button
- $( "div[role='button'][tabindex='0'] > div > span > span:contains('Показати')" ).click(); //"Show additional replies, including those that may contain offensive content" button
- //Hide useless sections
- $( "aside[aria-label='Рекомендовані']" ).parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Рекомендації')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At anybody's profile - hide header "Who to follow", then 3 suggestions, "Show more" and divider
- $( "div[aria-label='Стрічка: Актуальне зараз']" ).parent().parent().parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('Тренди для вас')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At 'explore' page
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Topics to follow')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At anybody's profile
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Suggested Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At 'topics' page
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Discover new Lists')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Expand your timeline with Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- //$( "span[aria-label^='Recommended Topic:'] > span > span" ).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().hide(); //At the newsfeed
- $( "div[aria-label='Відкрити додаток']" ).parent().hide(); //At any tweet on mobile browser
- //$( "div[data-testid='inlinePrompt'] > h1[role='heading'] > span > span > span:contains('Concerned about your digital security?')" ).parent().parent().parent().parent().parent().parent().parent().hide().next().hide(); //At the newsfeed
- //==== CHINEESE SIMPLIFIED INTERFACE
- //Show more
- $( "div[role='button'][tabindex='0'] > div > div > div > span:contains('显示回复')" ).click(); //"Show replies" button
- $( "div[role='button'][tabindex='0'] > div > div > span:contains('显示更多回复')" ).click(); //"Show more replies" button
- $( "div[role='button'][tabindex='0'] > div > span > span:contains('显示')" ).click(); //"Show additional replies, including those that may contain offensive content" button
- //Hide useless sections
- $( "aside[aria-label='推荐关注']" ).parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('推荐关注')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At anybody's profile - hide header "Who to follow", then 3 suggestions, "Show more" and divider
- $( "div[aria-label='Timeline: Trending now']" ).parent().parent().parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('你的趋势')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At 'explore' page
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Topics to follow')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At anybody's profile
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Suggested Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At 'topics' page
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Discover new Lists')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Expand your timeline with Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- //$( "span[aria-label^='Recommended Topic:'] > span > span" ).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().hide(); //At the newsfeed
- $( "div[aria-label='打开应用']" ).parent().hide(); //At any tweet on mobile browser
- //$( "div[data-testid='inlinePrompt'] > h1[role='heading'] > span > span > span:contains('Concerned about your digital security?')" ).parent().parent().parent().parent().parent().parent().parent().hide().next().hide(); //At the newsfeed
- //==== CHINEESE TRADITIONAL INTERFACE
- //Show more
- $( "div[role='button'][tabindex='0'] > div > div > div > span:contains('顯示回覆')" ).click(); //"Show replies" button
- $( "div[role='button'][tabindex='0'] > div > div > span:contains('顯示更多回覆')" ).click(); //"Show more replies" button
- $( "div[role='button'][tabindex='0'] > div > span > span:contains('顯示')" ).click(); //"Show additional replies, including those that may contain offensive content" button
- //Hide useless sections
- $( "aside[aria-label='跟隨誰']" ).parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('跟隨誰')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At anybody's profile - hide header "Who to follow", then 3 suggestions, "Show more" and divider
- $( "div[aria-label='時間軸:流行趨勢']" ).parent().parent().parent().hide(); //At the newsfeed
- $( "div[style='-webkit-line-clamp: 3;'] > span:contains('你的流行趨勢')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At 'explore' page
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Topics to follow')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At anybody's profile
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Suggested Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide(); //At 'topics' page
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Discover new Lists')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- //$( "div[style='-webkit-line-clamp: 3;'] > span:contains('Expand your timeline with Topics')" ).parent().parent().parent().parent().parent().hide().next().hide().next().hide().next().hide().next().hide().next().hide(); //At the newsfeed
- //$( "span[aria-label^='Recommended Topic:'] > span > span" ).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().hide(); //At the newsfeed
- $( "div[aria-label='開啟應用程式']" ).parent().hide(); //At any tweet on mobile browser
- //$( "div[data-testid='inlinePrompt'] > h1[role='heading'] > span > span > span:contains('Concerned about your digital security?')" ).parent().parent().parent().parent().parent().parent().parent().hide().next().hide(); //At the newsfeed
- };
- const rootNode = document.querySelector("#react-root");
- if (rootNode != null) {
- const rootObserver = new MutationObserver(rootCallback);
- rootObserver.observe(rootNode, config);
- }
- })();