从Modernizr检查字体
Font-face check from Modernizr
Modernizr检测CSS3字体支持
http://modernizr.com/download/如何在现代化设备之外获得font-face
测试的源?
该文件似乎不容易从Modernizr的其余部分解耦。在我看来,使用Modernizr要容易得多。
您可以在下载部分自定义它,只下载您需要的检查项,所以如果您只需要font-face测试,您将只下载该部分。
如果出于某种原因你不想使用Modernizr,一个叫做Paul Irish的前端开发者已经做了一个@font-face特征检测,这可能或多或少就是你正在寻找的。希望对大家有所帮助。
试试:http://jsbin.com/litava/3/edit
下面的代码应该可以工作。我建议你真的应该使用Modernizr,因为他们正确地测试了他们的实现,并且他们维护它。
// supportsFontFace released to public domain by Robocat. Thanks are also due to Modernizr and the number 9
function supportsFontFace() {
function blacklist() {
var match = /(WebKit|windows phone.+trident)'/('d+)/i.exec(navigator.userAgent);
return match && parseInt(match[2], 10) < (match[1] == 'WebKit' ? 533 : 6);
}
function hasFontFaceSrc() {
var style = document.getElementById('fontsupporttest');
var sheet = style.sheet || style.styleSheet;
var cssText = sheet ? (sheet.cssRules && sheet.cssRules[0] ? sheet.cssRules[0].cssText : sheet.cssText || '') : '';
return /src/i.test(cssText);
}
return !blacklist() && hasFontFaceSrc();
}
并添加以下样式:
<style id=fontsupporttest>@font-face{font-family:"font";src:url("https://")}</style>
我重写了它,所以它没有任何版权问题,并简化了它一点,使它黑名单不那么保守(不支持任何webkit低于523,也阻止了webos,不支持windows phone <8、不支持浏览器前缀字体(如-webkit-font-face)。
使用Gulp自定义构建Modernizr:
gulpfile.js
'use strict';
var modernizr = require('gulp-modernizr');
gulp.task('modernizr', function() {
gulp.src(path.resolve(require.resolve('modernizr'), '../../**/*.js'))
.pipe(modernizr('modernizr.js', {
tests: [
'fontface',
],
}))
.pipe(gulp.dest('app/src/js'));
});
gulp.task('default', ['modernizr']);
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 如何检查管道中未定义的项目
- 主干-不管怎样,检查事件以前是否绑定过
- 用Javascript更改我网站上的字体大小
- 使用javascript检查多个输入值,并在1次检查中标记多个输入框
- 递归使用 eval() 是检查程序执行的好方法吗?
- 检查onsubmit doenst work jquery contactform上的函数
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- API密钥使用和检查示例
- 如何让程序检查所选单词中是否有按键
- 更改单选按钮检查的值的字体大小
- 动态附加的 Web 字体加载器 - 如何检查脚本是否已存在
- 使用javascript检查浏览器对字体的支持
- 如何检查js上的字体家族
- 从Modernizr检查字体
- 如何通过javascript检查字体-face功能是否可用
- 如何在网页上检查/选择与渐变形成良好对比的字体颜色
- 如何检查外部字体的加载