AtCoder TLE Police

TLE提出は逮捕('TLE' を 'AR'(ArRested)に置き換えます)

当前为 2019-03-29 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name AtCoder TLE Police
  3. // @namespace https://fuwa.dev
  4. // @version 0.1
  5. // @description TLE提出は逮捕('TLE' を 'AR'(ArRested)に置き換えます)
  6. // @author ibuki2003
  7. // @match https://atcoder.jp/contests/*/submissions*
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. function replaceTLE2AR(node){
  12. var e;
  13. e=(node.nodeName=='SPAN')?node:node.parentElement;
  14. if(e.innerText.match(/TLE/)){
  15. e.innerText = e.innerText.replace(/TLE/g, 'AR');
  16. e.setAttribute('data-original-title','逮捕');
  17. e.classList.remove('label-warning');
  18. e.classList.add('label-danger');
  19. }
  20. }
  21. (function() {
  22. 'use strict';
  23.  
  24. const target = document.getElementsByTagName('tbody')[0];
  25. const observer = new MutationObserver(function (mutations) {
  26. for(let i in mutations){
  27. replaceTLE2AR(mutations[i].target);
  28. }
  29. });
  30.  
  31. const tips=document.getElementsByClassName('label');
  32. for(let o of tips)replaceTLE2AR(o);
  33.  
  34. observer.observe(target, {
  35. //attributes: true,
  36. characterData: true,
  37. childList: true,
  38. subtree: true
  39. });
  40. })();