javascript - 动态加载 sprite SVG 文件

标签 javascript html css svg

我有一个 SVG Sprite 文件,它是由设计师为我的应用程序提供的。他们希望我用来渲染他们的 SVG 图标的约定是在 <body> 的顶部加载 Sprite 。元素,然后像这样呈现图标:

<svg class="u-icon-gear-dims">
    <use xlink:href="#gear"></use>
</svg>

这在我添加内联 SVG sprite 时有效,即将 SVG sprite 的全部内容放入我的 template.html 文件中。内联添加 sprite 会使 html 文件变得丑陋,但更重要的是,必须手动执行它会引起可维护性问题。

我目前直接引用各个 SVG 来渲染图标,但这会对性能产生影响,因为在图标尚未加载时通常会出现瞬间延迟。

我找到了 this SO 主题,但似乎没有可行的答案。

FWIW,我们的应用程序使用 webpack,我目前正在尝试将 SVG Sprite 加载到模板 HTML 文件中。

如何从 HTML 文件中的文件动态加载 SVG Sprite ?

最佳答案

您使用的是 PHP 吗?有一些方法可以使用后端语言内嵌 SVG 标记。 https://sheelahb.com/blog/how-to-get-php-to-play-nicely-with-svg-files/

关于javascript - 动态加载 sprite SVG 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55243550/

相关文章:

html - 我可以在primeng按钮上添加图标吗?

javascript - 如何在 ES6 中无需使用 super 来扩展类?

javascript - 切换导航未打开

javascript - 我应该将 Javascript 放在 HTML 文件的头部还是主体中?

html - 您将使用什么 CSS 功能在 2D 网格上显示高程?

html - 我希望我的 div 重叠

javascript - Jquery 数据表显示详细信息

javascript - 获取不包括水平滚动条的视口(viewport)高度?

javascript - 按后缀插入多个 TD 到表中间

html - 确定是否从 Iframe 服务器端加载没有客户端