// ==UserScript== // @name Colorful Course // @namespace http://tampermonkey.net/ // @version 0.1 // @description Try and see // @author Ajax // @match http://zhjwxk.cic.tsinghua.edu.cn/xkBks.vxkBksXkbBs.do* // @icon https://www.google.com/s2/favicons?sz=64&domain=tsinghua.edu.cn // @grant none // @license MIT // @downloadURL none // ==/UserScript== function colorOne(td, sum, available) { var l = td.text.split(","); var html = ""; for (var i=0; i available) { html += `${l[i]},`; } else if ((sum += l[i]) > available) { html += `${l[i]},`; } else { html += `${l[i]},`; } } td.innerHTML = html.substr(0, html.length - 1); return sum; } (function() { 'use strict'; var frame = document.getElementsByName("top")[0]; setInterval(function() { var doc = frame.contentDocument; if (doc.colored === true) { return; } doc.getElementsByClassName("trr2").forEach((tr) => { var available = Number(tr.children[4].text); var total = Number(tr.children[5].text); var sum = 0; sum = colorOne(tr.children[6], sum, available); sum = colorOne(tr.children[7], sum, available); sum = colorOne(tr.children[8], sum, available); }); doc.colored = true; }, 1000); })();