AtCoder Graduation

Dispaly the year of graduation of the user.

  1. // ==UserScript==
  2. // @name AtCoder Graduation
  3. // @namespace matsu7874
  4. // @version 1.0
  5. // @description Dispaly the year of graduation of the user.
  6. // @author matsu7874
  7. // @match https://atcoder.jp/users/*
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function () {
  12. 'use strict';
  13. let getBachelor = function (birthYear) {
  14. return birthYear + 23;
  15. }
  16. let getMaster = function (birthYear) {
  17. return birthYear + 25;
  18. }
  19. let createGraduatedRow = function (birthYear) {
  20. let descriptionOfGraduated = "B: " + getBachelor(birthYear) + "卒?\nM: " + getMaster(birthYear) + "卒?";
  21. let row = document.createElement("tr");
  22. let rowHeader = document.createElement("th");
  23. rowHeader.innerText = "卒業年度";
  24. let rowDef = document.createElement("td");
  25. rowDef.innerText = descriptionOfGraduated;
  26. row.appendChild(rowHeader);
  27. row.appendChild(rowDef);
  28. return row;
  29. }
  30. let userInfoTable = document.querySelector("#main-container > div.row > div.col-sm-3 > table > tbody");
  31. let rows = userInfoTable.getElementsByTagName("tr");
  32. for (let i = 0; i < rows.length; ++i) {
  33. if (rows[i].getElementsByTagName("th")[0].innerText === "誕生年") {
  34. let birthYear = parseInt(rows[i].getElementsByTagName("td")[0].innerText, 10);
  35. userInfoTable.appendChild(createGraduatedRow(birthYear));
  36. break;
  37. }
  38. }
  39. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址