I Shar

I Shar

мир глазами веб-разработчика

Изучаем содержимое SVG спрайта

анализируем картинки в SVG спрайте с помощью JavaScript

I Shar

время чтения 1 мин.

Photo by Sebastian Herrmann on Unsplash

Бесспорно, все мы знаем структуру SVG-спрайта: это один корневой элемент svg, внутри которого находятся области symbol, содержащие картинки. Каждому symbol присваивается уникальный id, по которому идет дальнейшее обращение к картинке. Контент, расположенный внутри symbol не отображается на странице.


    ...
    ...
    ...


Часто таким образом организуются наборы пиктограмм. И, вообще, такие SVG-спрайты достаточно удобны в работе и популярны среди разработчиков.

Но что делать, когда у Вас есть спрайт, о содержимом которого Вы ничего не знаете?

Вот небольшой скрипт, который в цикле обходит все изображения внутри элемента svg и выводит их на экран:

const sprite = document.querySelector("svg");
const symbols = sprite.querySelectorAll("symbol");
symbols.forEach(symbol => {
  document.body.insertAdjacentHTML("beforeend", `
  
     
  
`)
});

Для примера возьмем фрагмент SVG-спрайта с набором иконок ionicons, полную версию которого можно получить на github:


Спасибо за внимание.

    • frontend
    • js

Новые публикации

Далее

Категории

О нас

Frontend & Backend. Статьи, обзоры, заметки, код, уроки.