← Все примеры

JavaScript Продуктивность medium.com

Medium: приглушить прочитанные статьи

Запоминает открытые статьи и приглушает их карточки в ленте, чтобы не открывать их снова.

Код для копирования

// Dim feed cards whose article link has already been visited
(function () {
  const STYLE_ID = 'jz-med-visited';
  if (!document.getElementById(STYLE_ID)) {
    const s = document.createElement('style');
    s.id = STYLE_ID;
    s.textContent = '.jz-med-seen{opacity:.5!important}';
    document.head.appendChild(s);
  }
  function mark() {
    document.querySelectorAll('article a[href]').forEach(function (a) {
      try {
        const key = 'jzmed:' + new URL(a.href).pathname;
        if (localStorage.getItem(key)) {
          const card = a.closest('article');
          if (card) { card.classList.add('jz-med-seen'); }
        }
        a.addEventListener('click', function () {
          try { localStorage.setItem(key, '1'); } catch (e) {}
        });
      } catch (e) {}
    });
  }
  mark();
  new MutationObserver(mark).observe(document.body,
    { childList: true, subtree: true });
})();

Как использовать этот пример

  1. Скопируй код кнопкой выше.
  2. Установи JustZix (2 минуты) и открой расширение на нужной странице.
  3. Добавь новое правило, совпадающее с этой страницей.
  4. Вставь код в панель JavaScript правила и сохрани — он запускается при каждом заходе на страницу.

Оцени этот пример

Оценок пока нет — оцени первым.

Этот пример работает?

Сниппеты бесполезны, если их некуда вставить.

JustZix устанавливается за 2 минуты и запускает твой код на каждой подходящей странице. Без аккаунта, без оплаты.

Скачать бесплатно Смотреть применение