これは私のユースケースに完全に適合するアップデートです。
CSSを使用して特定のトピックをページ読み込み時以降非表示にしたい場合は、これで実現できます。トピックIDをトピックIDのリストに追加するだけです。
<script>
document.addEventListener("DOMContentLoaded", function() {
var topicIdsToHide = ["10", "20", "30"]; // ここにトピックIDを追加してください
function hideElementsByDataTopicIds() {
topicIdsToHide.forEach(function(id) {
var element = document.querySelector('[data-topic-id="' + id + '"]');
if (element) {
element.style.display = 'none';
}
});
}
// 初期実行
hideElementsByDataTopicIds();
// DOMの変更を監視するためのミューテーションオブザーバーを作成
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
hideElementsByDataTopicIds();
});
});
// ドキュメント全体を監視
observer.observe(document.body, { childList: true, subtree: true });
});
</script>