Есть ли кросс-браузерный способ (ы) поиска поддержки для азиатских языков или японцев конкретно?
Вы имеете в виду «есть ли установленный японский шрифт»? Потому что единственный другой аспект «поддержки азиатских языков», который могут настроить современные ОС, заключается в том, что известны кодировки символов, такие как Shift-JIS (например, кодовая страница 932 в Windows). Но вам это вообще не нужно, поскольку вы можете просто использовать UTF-8, который намного чище и поддерживается повсюду.
В общем случае вы не можете напрямую определить, установлен ли шрифт для определенного диапазона символов, но есть окольные пути. Как, например, измерения обработанную размера на странице текста:
var half= document.createElement('span');
var full= document.createElement('span');
half.appendChild(document.createTextNode('\uFF71'));
full.appendChild(document.createTextNode('\u30A2'));
document.body.insertBefore(half, document.body.firstChild);
document.body.insertBefore(full, document.body.firstChild);
var havejapanesefont= half.offsetWidth!=full.offsetWidth;
document.body.removeChild(half);
document.body.removeChild(full);
Это временно создает элементы, содержащие половину ширины и полной ширины варианты катакана «а». Если доступен японский шрифт, мы ожидаем, что они будут иметь разную ширину. Если такой шрифт не существует, они, скорее всего, будут отображаться как похожие глифы «непередаваемого персонажа» с одинаковой шириной.
Очень умный взлом! –
Да, только шрифты, и это всего лишь трюк, который я искал, спасибо :) – Annan