EasyNotes.Title.fix

一个通用的网页标题栏自动修正工具

  1. // ==UserScript==
  2. // @name EasyNotes.Title.fix
  3. // @version 2
  4. // @grant none
  5. // @description 一个通用的网页标题栏自动修正工具
  6. // @include *
  7. // @auther tumuyan
  8. // @namespace https://userstyles.org/users/126795
  9. // ==/UserScript==
  10.  
  11. function deSimilar ( input, sp){
  12. var split=input.split(" ");
  13. var quality=false;
  14. var length=split.length;
  15. for (var i=0;i<length;i++){
  16. if(split[i].length>6){
  17. qulity=true;
  18. if(sp.match(split[i])){
  19. return true;
  20. }
  21. }
  22. }
  23. if(quality){
  24. return false;
  25. }else{
  26. return true;
  27. }
  28.  
  29. }
  30.  
  31. function deTail (input,i){
  32.  
  33. if (input.match("Powered by"))
  34. {
  35. return i;
  36. }else if(input.match(/的+.*[社区|论坛]/))
  37. {
  38. // alert(input+" match 的论坛");
  39. return i;
  40. }
  41. else{
  42. var output=input.replace(/\s$/,"");
  43. if (i==""){
  44. output= output.replace(/^\s/,"");
  45. }
  46. else{
  47. output=i+" - " + output.replace(/^\s/,"");
  48. }
  49. return output;
  50. }
  51.  
  52. }
  53.  
  54.  
  55. var title=document.getElementsByTagName("h1") ;
  56. // var head=document.getElementsByTagName("head") ;
  57.  
  58. var new_title=title[0].innerText.replace("\n" , " " );
  59. var title_tag=document.getElementsByTagName("title");
  60. //title_tag[0].innerHTML=new_title +" - " +title_tag[0].innerHTML;
  61. var title_text=title_tag[0].innerText;
  62. // alert(title_text);
  63.  
  64. if (deSimilar(new_title,title_text)){
  65. new_title="";
  66. }else {
  67. // new_title=new_title+" - ";
  68. }
  69.  
  70.  
  71. var title_sub=title_text.split("-");
  72. var sub_length=title_sub.length;
  73. if (sub_length>2){
  74.  
  75. for (var i=0;i<sub_length-1;i++){
  76. new_title= deTail (title_sub[i],new_title);
  77. }
  78. }
  79. else{
  80. //new_title=new_title+title_text;
  81. for (var i=0;i<sub_length;i++){
  82. new_title= deTail (title_sub[i],new_title);
  83. }
  84. }
  85. //alert(new_title);
  86. title_tag[0].innerHTML=new_title.replace(/\s+/g, " ");
  87.  
  88. //alert(new_title);
  89. //alert(title[0].innerText+" \n "+ head[0].innerHTML);