Slack: остановить анимацию GIF
Замораживает анимированные GIF на первом кадре, чтобы переписка не мерцала.
Код для копирования
// Pause animated GIFs by freezing them onto a static canvas after they load
function freezeGifs() {
document.querySelectorAll('img[src*=".gif"]:not([data-jz-frozen])').forEach(function (img) {
img.setAttribute('data-jz-frozen', '1');
if (!img.naturalWidth) { return; }
const c = document.createElement('canvas');
c.width = img.naturalWidth;
c.height = img.naturalHeight;
try {
c.getContext('2d').drawImage(img, 0, 0);
img.src = c.toDataURL();
} catch (e) { /* cross-origin image, leave as is */ }
});
}
freezeGifs();
const gifObs = new MutationObserver(freezeGifs);
gifObs.observe(document.documentElement, { childList: true, subtree: true });
Как использовать этот пример
- Скопируй код кнопкой выше.
- Установи JustZix (2 минуты) и открой расширение на нужной странице.
- Добавь новое правило, совпадающее с этой страницей.
- Вставь код в панель JavaScript правила и сохрани — он запускается при каждом заходе на страницу.
Оцени этот пример
Оценок пока нет — оцени первым.