Show Twitter List

Show twitter list in title.

目前为 2019-05-03 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name Show Twitter List
  3. // @namespace https://wiki.gslin.org/wiki/ShowTwitterList
  4. // @version 0.0.20190504.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-end
  10. // @license MIT
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. 'use strict';
  15.  
  16. let profile_banner_re = new RegExp('https://pbs\.twimg\.com/profile_banners/([0-9]+)/');
  17. let url_re = new RegExp('^https://twitter\.com/[^/]+(/media)?$');
  18.  
  19. (() => {
  20. if (!document.location.href.match(url_re)) {
  21. return;
  22. }
  23.  
  24. let user_id = document.querySelector('.ProfileNav[data-user-id]').getAttribute('data-user-id');
  25. let url = '/i/' + user_id + '/lists';
  26. console.debug('Trying to fetch ' + url);
  27.  
  28. let req = new XMLHttpRequest();
  29. req.addEventListener('load', function(){
  30. let h = document.createElement('div');
  31. h.innerHTML = JSON.parse(this.responseText).html;
  32.  
  33. console.debug('Got ' + url, h);
  34.  
  35. let c = h.querySelector('.membership-checkbox[checked="checked"]');
  36. if (!c) {
  37. return;
  38. }
  39.  
  40. let l = c.parentElement.innerText.trim();
  41. let title = document.getElementsByTagName('title')[0];
  42. title.innerHTML = '(' + l + ') ' + title.innerHTML;
  43. });
  44. req.open('GET', url);
  45. req.send();
  46. })();
  47. })();