Кросс-браузерное веб-шрифты загружено событие
Я пытаюсь измерить ширину конкретного символа из веб-шрифта. Активное событие, предоставленное GoogleWebfont Loader срабатывает немного раньше и измерение производится на шрифте по умолчанию.
Сокращенная версия скрипта, с которым я работаю:
window.WebFontConfig = {
google: {
families: ['Anonymous Pro:400,400italic,700,700italic']
},
active: function () {
$.fn.ready(MeasureM);
}
};
function MeasureM() {
var e = document.getElementById('div');
e.style.font = "15px/15px 'Anonymous Pro'";
e.appendChild(document.createTextNode('M'));
console.log(e.offsetWidth, e.offsetHeight);
}
(function () {
var wf = document.createElement('script');
wf.src = ('https:' == document.location.protocol ? 'https' : 'http') +
'://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
wf.type = 'text/javascript';
wf.async = 'true';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(wf, s);
})();
Элемент HTML:
<div id="div" style="display: table;"></div>
Для удобстваjsFiddle.
Проблема, с которой я сталкиваюсь, возникает только в Firefox, есть ли решение? Или есть что-то, что я неправильно понимаю?