您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds filter dropdowns to the top row of any .table
// ==UserScript== // @name tablefilter // @namespace crinfarr.io // @version 2024-07-12 // @description Adds filter dropdowns to the top row of any .table // @author Crinfarr // @match *://*/* // @grant none // @run-at context-menu // ==/UserScript== (function() { for (let table of document.getElementsByClassName("table")) { let headers = table.getElementsByTagName('thead')[0].children[0].children; for (let headeridx in headers) { let ipt = document.createElement('input'); ipt.type = 'text'; ipt.addEventListener("change", () => { for (let row of table.getElementsByTagName('tbody')[0].children) { if (ipt.value == '') { row.hidden = false; } let cell = row.children[headeridx] let filters = ipt.value.split(/(?!<\\)\|\|/gm).map(s => s.trim()); if (filters.some((filter) => { return cell.innerText.includes(filter); })) { console.log(`${cell.innerText} contains ${filters}`); row.hidden = false; } else { console.log(`${cell.innerText} does not contain ${filters}`); row.hidden = true; } } }); headers[headeridx].appendChild(ipt); } } })();