您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
click on "view replies (500)" and it will click on the same button until all replies open.
// ==UserScript== // @name "view replies" auto expander // @namespace http://tampermonkey.net/ // @version 0.2 // @description click on "view replies (500)" and it will click on the same button until all replies open. // @author goodwin64 // @match *://instagram.com/* // @match *://www.instagram.com/* // @namespace instagram.com // @grant none // ==/UserScript== (function() { 'use strict'; const markedElements = new Set(); function listenToExpandClicks() { [...document.getElementsByTagName('span')] .filter(el => el.innerText.toLowerCase().includes('view')) .forEach(el => { if (!markedElements.has(el)) { el.addEventListener('click', handleViewRepliesClick); markedElements.add(el); } }); } function howMuchRepliesLeft(str) { const repliesCountMatch = str.match(/.*\((\d*)\)/) return repliesCountMatch ? Number(repliesCountMatch[1]) : 0; } function handleViewRepliesClick() { clickIfExpandable(this); } function clickIfExpandable(el) { const repliesLeft = howMuchRepliesLeft(el.innerText); if (repliesLeft > 0) { el.click(); setTimeout(() => { clickIfExpandable(el); }, 1000); } else { el.removeEventListener('click', handleViewRepliesClick); markedElements.delete(el); } } setInterval(listenToExpandClicks, 3000); })();