有没有办法检查浏览器是否能够在不嗅探的情况下使用控制台颜色?
console.log('%c Oh my heavens! ', 'background: #222; color: #bada55');
例如,在 chrome 26+ 和 firebug 中将打印彩色输出。
有没有办法检查浏览器是否能够在不嗅探的情况下使用控制台颜色?
console.log('%c Oh my heavens! ', 'background: #222; color: #bada55');
例如,在 chrome 26+ 和 firebug 中将打印彩色输出。
这是浏览器版本检测似乎是有效方法的少数情况之一。为了尽量减少这种方法的危险,请确保使用黑名单而不是白名单,无论现在这感觉多么不直观(以确保您不会像许多旧的以 netscape 为重点的代码一样遗漏新的未来浏览器)。我知道这不是您想听到的答案,但作为console.log
本机功能,它的效果绝不可能被观察到,所以据我所知,唯一的选择是进行浏览器版本检测。
我写了 Console.js https://github.com/icodeforlove/Console.js让我们更容易做到这一点
Console.styles.register({
red: 'color: red',
underline: 'text-decoration: underline',
bold: 'font-weight: bold'
});
那么你可以这样做
console.log('red text '.red + 'red underlined text'.red.underline + 'red bold text'.red.bold);
它会像这样优雅地退化