如何使用javascript检查是否在网页中加载了Font Awesome?

cma*_*mac 5 javascript css font-awesome

我需要检查一个网页是否有Font Awesome.如果没有,我将用JavaScript加载它.有点像facebook sdk如何检查是否有一个包含id"facebook-jssdk"的脚本元素,如果是这样它只返回(什么都不做),如果没有它加载它.我需要为Font Awesome做到这一点.

cma*_*mac 7

我认为这是检查字体真棒的最佳方法,但我不确定它是否慢,然后再次加载即使它在那里.

function css(element, property) {
  return window.getComputedStyle(element, null).getPropertyValue(property);
}

window.onload = function () {
  var span = document.createElement('span');

  span.className = 'fa';
  span.style.display = 'none';
  document.body.insertBefore(span, document.body.firstChild);

  if ((css(span, 'font-family')) !== 'FontAwesome') {
    // add a local fallback
  }
  document.body.removeChild(span);
};
Run Code Online (Sandbox Code Playgroud)