// ==UserScript==
// @name ワードミュート(https用)
// @namespace http://tampermonkey.net/
// @version 0.1
// @description 要素の内容(text)をもとにワードミュートする
// @author You
// @match https://*/*
// @icon
// @require http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
// @grant none
// ==/UserScript==
// bodyの内容変更を監視
var observer = new MutationObserver(function(){
removeMuteWard()
});
// bodyの内容変更を監視する設定
const config = {
childList: true,
subtree:true
};
$(function(){
removeMuteWard();
observer.observe(document.getElementsByTagName("body")[0],config);
});
function removeMuteWard() {
for(let i = 0; i<RULES.length; i++) {
let rule = RULES[i];
let url = document.URL;
if(url.match(new RegExp(rule.URL))) {
for(let j=0;j<rule.MUTE_LIST.length;j++) {
let muteItem = rule.MUTE_LIST[j];
if (muteItem.SEARCH_ELEMENT == "") {
muteItem.SEARCH_ELEMENT = muteItem.MUTE_ELEMENT;
}
$(muteItem.SEARCH_ELEMENT).each(function(index) {
if($(this).text().match(new RegExp(muteItem.MUTE_WORD))) {
$(this).closest(muteItem.MUTE_ELEMENT).remove();
}
});
}
}
}
}
// ワードミュートのルール集
const RULES = [
{
URL:"ミュート機能を適用したいurl(正規表現可)"
,MUTE_LIST :[
{MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}
,{MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}
]
}
,{
URL:"ミュート機能を適用したいurl(正規表現可)"
,MUTE_LIST :[
{MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}
,{MUTE_WORD:"ミュートワード(正規表現可)", MUTE_ELEMENT:"ミュート対象要素", SEARCH_ELEMENT:"ミュートワードの検索対象要素"}
]
}
];