// ==UserScript== // @name 巴哈姆特-場外休憩區--隱藏廢文 // @namespace hbl917070 // @include http://forum.gamer.com.tw/C.php?bsn=60076* // @include http://forum.gamer.com.tw/C.php?page=*&bsn=60076* // @version 1.1 // @grant none // @description:zh-tw 作者:hbl91707(異音) // @description +++ // @downloadURL none // ==/UserScript== var int_回文小於特定長度 = 2;//小於等於2個字就隱藏回文 var int_留言小於特定長度 = 0; var s_要被過濾的文字 = ["私", "私私", "禾厶", "ㄙ", "ㄙㄙ", "斯", "戰歌", "戰哥", "單戈哥欠", "泰瑞", "卡", "car", "CAR", "推"]; var int_留言 = 0; var int_回文 = 0; //隱藏回文 var obj_1 = document.getElementsByClassName("FM-cbox1"); for (var i = 0; i < obj_1.length; i++) { try { var obj_展開留言 = obj_1[i].getElementsByClassName("FM-cbox10D")[0].getElementsByTagName("a")[0]; obj_展開留言.onclick = fun_隱藏留言; } catch (e) { } var s = obj_1[i].getElementsByClassName("FM-cbox7")[0].innerText.replace(/ /g, "").replace(/\r/g, "").replace(/\n/g, ""); if (obj_1[i].getElementsByClassName("FM-cbox7")[0].getElementsByTagName("img")[0] === undefined) if (obj_1[i].getElementsByClassName("FM-cbox7")[0].getElementsByTagName("iframe")[0] === undefined) if (s.length <= int_回文小於特定長度) { fun_隱藏物件(obj_1[i], "回文"); continue; } for (var j = 0; j < s_要被過濾的文字.length; j++) { if (s == s_要被過濾的文字[j]) { fun_隱藏物件(obj_1[i], "回文"); break; } } } fun_隱藏留言(); function fun_隱藏留言() { setTimeout(function () { var obj_1 = document.getElementsByClassName("FM-cbox10A"); for (var i = 0; i < obj_1.length; i++) { //取得留言內容 var s = obj_1[i].innerText; var len2 = obj_1[i].getElementsByTagName("a")[0].innerText.length;//扣掉名字 var len3 = obj_1[i].getElementsByTagName("span")[0].innerText.length;//扣掉時間 var len_but = (obj_1[i].getElementsByTagName("button").length == 1) ? 4 : 6;//扣掉按鈕 s = s.substring(len2 + len_but, s.length - len3).replace(/ /g, "").replace(/\r/g, "").replace(/\n/g, ""); if (s.length <= int_留言小於特定長度) { fun_隱藏物件(obj_1[i], "留言"); continue; } for (var j = 0; j < s_要被過濾的文字.length; j++) { if (s == s_要被過濾的文字[j]) { fun_隱藏物件(obj_1[i], "留言"); break; } } }//for fun_更新按鈕(); }, 2000); } function fun_隱藏物件(obj, ss) { if (obj.style.display != "none") { obj.style.display = "none"; obj.style.background = "rgba(150,0,0,0.3)"; if (ss == "留言") { int_留言++; } else { int_回文++; } } } function fun_更新按鈕() { if (int_留言 === 0 && int_回文 === 0) { document.getElementById("but_view").innerHTML = ""; } else if (int_回文 === 0) { document.getElementById("but_view").innerHTML = "顯示:留言" + int_留言; } else if (int_留言 === 0) { document.getElementById("but_view").innerHTML = "顯示:回文" + int_回文; } else { document.getElementById("but_view").innerHTML = "顯示:留言" + int_留言 + "、回文" + int_回文; } } var bu = document.createElement("div"); bu.id = "but_view"; bu.onclick = fun_顯示; bu.style.display = "inline"; bu.style.marginLeft = "10px"; bu.style.color = "rgb(255,150,150)"; var obj_搜尋框 = document.getElementsByClassName("TOP-search")[0]; obj_搜尋框.appendChild(bu); fun_更新按鈕(); function fun_顯示() { //初始化 document.getElementById("but_view").innerHTML = ""; int_回文 = 0; int_留言 = 0; //回文 var obj_1 = document.getElementsByClassName("FM-cbox1"); for (var i = 0; i < obj_1.length; i++) { obj_1[i].style.display = "block"; } //留言 obj_1 = document.getElementsByClassName("FM-cbox10A"); for ( i = 0; i < obj_1.length; i++) { obj_1[i].style.display = "block"; } }