乃木坂46の運営、ついに風説の流布や誹謗中傷対策へslip最終更新 2026/10/11 11:32201.君の名はKY-PbW-yg-ea84em9K// PART 3/4 // 本文まで含めて広く判定したいワード(コメント個別非表示にもこれを使う) const BODY_NG_WORDS = [ 'アンチ', 'スッス', '◆miF7jLFLq.2.', '欅坂', '櫻坂', '日向坂', 'サクカス', 'ヒナカス', 'パンティーズ', 'おひさま', ]; function getTitleText(el) { const titleEl = el.querySelector('[class*="title"], [class*="Title"], a'); if (titleEl) return titleEl.innerText || ''; return (el.innerText || '').split('\n')[0]; } // 一覧・ランキングのスレッド単位の非表示 function hideThreads() { document.querySelectorAll('article, div[class*="rankingArticle-module"][class*="textBase"]').forEach(el => { if (el.getAttribute('itemtype') === 'https://schema.org/DiscussionForumPosting') { el.style.display = ''; el.dataset.ngChecked = '1'; return; } if (el.dataset.ngChecked) return; el.dataset.ngChecked = '1'; const fullText = el.innerText || ''; const titleText = getTitleText(el); const hitTitle = TITLE_NG_WORDS.some(word => titleText.includes(word)); const hitBody = BODY_NG_WORDS.some(word => fullText.includes(word)); if (hitTitle || hitBody) { el.style.display = 'none'; console.log('非表示にした:', fullText.slice(0, 20)); } }); }// PART 3/4 ここまで2026/09/05 14:37:43215コメント欄へ移動すべて|最新の50件
㊗️沈金6周年&14連続選抜 弓木奈於「選抜のポジションを頂くには理由がある。どこのポジションでもその理由を探して頑張らなきゃいけない」←冨里!聞いてっか!?乃木坂462017942026/10/24 03:45:02
// 本文まで含めて広く判定したいワード(コメント個別非表示にもこれを使う)
const BODY_NG_WORDS = [
'アンチ', 'スッス', '◆miF7jLFLq.2.',
'欅坂', '櫻坂', '日向坂', 'サクカス', 'ヒナカス', 'パンティーズ', 'おひさま',
];
function getTitleText(el) {
const titleEl = el.querySelector('[class*="title"], [class*="Title"], a');
if (titleEl) return titleEl.innerText || '';
return (el.innerText || '').split('\n')[0];
}
// 一覧・ランキングのスレッド単位の非表示
function hideThreads() {
document.querySelectorAll('article, div[class*="rankingArticle-module"][class*="textBase"]').forEach(el => {
if (el.getAttribute('itemtype') === 'https://schema.org/DiscussionForumPosting') {
el.style.display = '';
el.dataset.ngChecked = '1';
return;
}
if (el.dataset.ngChecked) return;
el.dataset.ngChecked = '1';
const fullText = el.innerText || '';
const titleText = getTitleText(el);
const hitTitle = TITLE_NG_WORDS.some(word => titleText.includes(word));
const hitBody = BODY_NG_WORDS.some(word => fullText.includes(word));
if (hitTitle || hitBody) {
el.style.display = 'none';
console.log('非表示にした:', fullText.slice(0, 20));
}
});
}
// PART 3/4 ここまで