mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-05-17 15:11:04 +00:00
42 lines
1.4 KiB
JavaScript
42 lines
1.4 KiB
JavaScript
/*!
|
|
{
|
|
"name": "Unicode characters",
|
|
"property": "unicode",
|
|
"tags": ["encoding"],
|
|
"warnings": [
|
|
"** DEPRECATED see https://github.com/Modernizr/Modernizr/issues/2468 **",
|
|
"positive Unicode support doesn't mean you can use it inside <title>, this seems more related to OS & Language packs"
|
|
]
|
|
}
|
|
!*/
|
|
/* DOC
|
|
Detects if unicode characters are supported in the current document.
|
|
*/
|
|
define(['Modernizr', 'createElement', 'testStyles', 'isSVG'], function(Modernizr, createElement, testStyles, isSVG) {
|
|
/**
|
|
* Unicode special character support
|
|
*
|
|
* Detection is made by testing missing glyph box rendering against star character
|
|
* If widths are the same, this "probably" means the browser didn't support the star character and rendered a glyph box instead
|
|
* Just need to ensure the font characters have different widths
|
|
*/
|
|
Modernizr.addTest('unicode', function() {
|
|
var bool;
|
|
var missingGlyph = createElement('span');
|
|
var star = createElement('span');
|
|
|
|
testStyles('#modernizr{font-family:Arial,sans;font-size:300em;}', function(node) {
|
|
|
|
missingGlyph.innerHTML = isSVG ? '\u5987' : 'ᝣ';
|
|
star.innerHTML = isSVG ? '\u2606' : '☆';
|
|
|
|
node.appendChild(missingGlyph);
|
|
node.appendChild(star);
|
|
|
|
bool = 'offsetWidth' in missingGlyph && missingGlyph.offsetWidth !== star.offsetWidth;
|
|
});
|
|
|
|
return bool;
|
|
});
|
|
});
|