Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name OnionAborn
- // @namespace http://localhost
- // @description No Drug No Spam
- // @include http://xiwayy2kn32bo3ko.onion/ura/subback.html
- // @version 1
- // @grant none
- // ==/UserScript==
- (function () {
- //NGワード
- const ng_words = ["発送","アイス","クリスタル","氷","キメ","キメ","配達","お待ち","お電話","手押し","支払い","連絡","営業","都内","野菜","八百屋"];
- var onionaborn = function(node){
- var textData = document.evaluate("//a[@href]/text()", node, null, 6, null);
- var elementBr = document.getElementsByTagName("br");
- var i, j, lenNG, txt;
- for (i=textData.snapshotLength - 1; 0<=i; --i) {
- txt = textData.snapshotItem(i).nodeValue;
- for (j=0, lenNG=ng_words.length; j<lenNG; j++){
- if(txt.indexOf(ng_words[j]) >= 0){
- //NGの空白化
- textData.snapshotItem(i).nodeValue = "";
- //<br>要素の削除
- elementBr[i].parentNode.removeChild(elementBr[i]);
- break;
- }
- }
- }
- };
- var nodeText = document.evaluate('//text()', document, null, 6, null);
- var nodePre = document.evaluate('//pre', document, null, 6, null);
- if (nodeText.snapshotLength===1 && nodePre.snapshotLength===1){
- var del = nodeText.snapshotItem(0);
- var lines = del.nodeValue.split(/\r?\n/);
- var ins = document.createElement('pre');
- ins.style.whiteSpace = 'pre-wrap';
- del.parentNode.replaceChild(ins, del);
- var i, len;
- for(i=0, len=lines.length; i<len; i++){
- ins.appendChild(document.createTextNode(lines[i]));
- ins.appendChild(document.createElement('br'));
- }
- }
- onionaborn(document);
- document.addEventListener('DOMNodeInserted', function(e){ onionaborn(e.target); }, false);
- document.addEventListener('DOMCharacterDataModified', function(e){ onionaborn(e.target); }, false);
- document.addEventListener('DOMAttrModified', function(e){ onionaborn(e.target); }, false);
- })();
Add Comment
Please, Sign In to add comment