3

我有一种情况,我正在使用 Data-URIs 加载字体并且只想使用一种文件类型 WOFF。不使用后备字体也很重要,因此我正在寻找一种方法来检测 JavaScript 是否支持 WOFF。是否可以检测到 WOFF(不是 WOFF2)支持?

这个问题之前已经被问过(Detecting with Javascript是否 a Browser support Web Open Font Format (Woff) or not),但给出和接受的答案不是关于检测 WOFF 支持。

4

1 回答 1

3

看起来唯一不支持 WOFF 的浏览器是 IE 8、Opera Mini 和 4.3 之前的 Android:http: //caniuse.com/#feat=woff

然后您可以通过查看是否存在来检查 IE8,通过查看是否addEventListener存在来检查 Opera Mini operamini

// from http://stackoverflow.com/a/19572784/4338477
function getAndroidVersion(ua) {
    ua = (ua || navigator.userAgent).toLowerCase(); 
    var match = ua.match(/android\s([0-9\.]*)/);
    return match ? match[1] : false;
}

if ((document.all && !document.addEventListener) || 
        (!!window['operamini']) || 
        (parseFloat(getAndroidVersion() < 4.4)) {
    // IE 8, Opera Mini, Android 4.3 or lower: No WOFF support
} else {
    // Supports WOFF
}
于 2015-11-10T20:36:04.213 回答