javascript - Font Awesome 性能

标签 javascript html css font-awesome

我正在使用 font-awesome 5.6.1 库来填充包含许多行和列的表格。对于每一行,大约有三种字体。字体通常定义如下:

<a href="#" class="d-inline" title="Lock Event" onclick=lockEvent()><i class="fas fa-lock"></i></a>

但是,我注意到在屏幕上出现大约 50 个图标后,性能受到了巨大影响。正在加载的表格有时包含多达 1000 行,相当于大约 3000 个图标。如果 Chrome 浏览器没有完全崩溃(仅字体),这需要大约 30 秒才能加载。

我遇到的是 FA 库的真实性能吗?还是我做错了什么?

更新

进一步调查显示字体实际上是作为 svg 生成的。试图弄清楚为什么会这样,因为我正在指定 css 字体:

 cell1.innerHTML = `<a href="#" class="d-inline" title="Unlock Event" onclick=unlockEvent()><i class="fas fa-unlock"></i></a>`;

更新

发生的事情是我指向了 FA CSS 和 JS 文件。因此,浏览器使用 JS 代码生成 SVG。确保你只有 CSS!

最佳答案

您如何引入 Font Awesome?如果你只是在脑海中包括:

<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.2/css/all.css" integrity="sha384-fnmOCqbTlWIlj8LyTjo7mOUStjsKC4pOpQbqyi7RrhN7udi9RwhKkMHpvLbHG9Sr" crossorigin="anonymous">

你将能够毫无问题地做你正在做的事情,它不会生成 svg。

关于javascript - Font Awesome 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55164958/

相关文章:

javascript - 在遍历 .JSON 时使用 Promise.all()?

javascript - 将包含 include 的 div 刷新到其他 php 文件

css - 在手机上使用 Materialise 对列重新排序

javascript - d3.js/css : Positioning elements within div

javascript - 无法让鼠标悬停多边形与谷歌地图一起使用 - 未捕获的引用错误 : google is not defined

javascript - 获取非输入字段,例如表单中的引导日期选择器

JavaScript console.log 执行顺序?

html - 错误的 css 样式

javascript - 如何加载在 iframe 的文本框中指定的 URL?

javascript - 标题不在滚动条上移动 - Javascript