Show Twitter List

Show twitter list in title.

目前為 2018-08-09 提交的版本,檢視 最新版本

  1. // ==UserScript==
  2. // @name Show Twitter List
  3. // @namespace https://wiki.gslin.org/wiki/ShowTwitterList
  4. // @version 0.0.20180810.0
  5. // @description Show twitter list in title.
  6. // @author Gea-Suan Lin <darkkiller@gmail.com>
  7. // @match https://twitter.com/*
  8. // @grant none
  9. // @run-at document-idle
  10. // @license MIT
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. 'use strict';
  15.  
  16. let url_re = new RegExp('^https://twitter\.com/[^/]+$');
  17. if (!document.location.href.match(url_re)) {
  18. return;
  19. }
  20.  
  21. let el = document.querySelector('.ProfileCanopy-headerBg img');
  22. if (!el) {
  23. return;
  24. }
  25. let matched = el.getAttribute('src').match(new RegExp('https://pbs\.twimg\.com/profile_banners/([0-9]+)/'));
  26. if (!matched) {
  27. return;
  28. }
  29.  
  30. let url = '/i/' + matched[1] + '/lists';
  31. let req = new XMLHttpRequest();
  32. req.addEventListener('load', function(){
  33. let h = document.createElement('div');
  34. h.innerHTML = JSON.parse(this.responseText).html;
  35.  
  36. let c = h.querySelector('.membership-checkbox[checked="checked"]');
  37. if (!c) {
  38. return;
  39. }
  40.  
  41. let l = c.parentElement.innerText.trim();
  42. let title = document.getElementsByTagName('title')[0];
  43. title.innerHTML = '(' + l + ') ' + title.innerHTML;
  44. });
  45. req.open('GET', url);
  46. req.send();
  47. })();