I guess I could adapt your idea by comparing some text with my unusual characters against the browser’s missing-character icon, which I could generate by referring to an unmapped codepoint.]]>
Your on-page demo hero in Safari correctly detects Courier New. Firefox reports it as not avialable (“false”).
To this same effect, testing for “HelveticaNeue-Light” in a -webkit browser reports “true” when it is present, but the same font-name reports false in Firefox – on the same computer.
“Helvetica Neue” however is found “true” on Firefox, however.
The webpage even renders ‘HelveticaNeue-Light’ in Firefox correctly, but only when set using an @font-face src: local(‘HelveticaNeue-Light’); rule.
How is your script handling font names with dashes/spaces? How about when the font is only available through the src: local() syntax? And why would Safari be able to find the Helvetica Neue’s font face, “Light” when Firefox can’t?
Would love to get to the bottom of this. Thanks for your script!]]>
var baseFonts = ['monospace','sans-serif','sans'];
But I think you should change the last one to “serif” instead of “sans”. Like this:
var baseFonts = [‘monospace’,’sans-serif’,‘serif’];]]>