Просто хотел проверить способность веб-загрузчика шрифтов, и я неожиданно обнаружил, что когда мне нужно загрузить тот же шрифт на другой странице, тогда загрузчик выполняет новую загрузку вместо использования кешированной версии шрифта. Это нормально? Если да, существует ли простой способ проверить, доступен ли шрифт для браузера, другими словами, будет ли он кэширован?
Вот как я загружаю шрифт:
<script>
WebFont.load({
custom: {
families: ['Univers45custom', 'Univers45customIE']
}
});
</script>
Я использую Web Font Loader v1.5.10
.
Добавление BramVanroy: эта нехватка кэширования также присутствует при использовании веб-сайтов Google. FOUT (Flash Unstyled Text) ненадолго появляется на веб-сайте, который использует загрузчик шрифтов даже после перезагрузки страницы несколько раз.
Редактировать по eldi: Привет, BramVanroy → Сейчас я не совсем уверен, как я обошел эту проблему, но, вероятно, я просто использовал @font-face
. Причина, по которой я тестировал Web Font Loader, был FOUT в первую очередь. Loader добавляет класс css в элемент html, который предоставляет вам способ стилизации вашей страницы без правильного шрифта, когда шрифты загружаются, а класс уходит, и ваш "стандартный" стиль присутствует. Это работает как ожидалось, но с исключением "отсутствия кэширования", которое в моей ситуации было неприемлемым. Я верю, что обходное решение staypuftman с изменением HTTP-заголовка выполнит эту работу, у меня нет времени на его тестирование, особенно мне нужно будет провести некоторое исследование, чтобы найти способ установить его в asp.net-хостинг-провайдере, поскольку установка его из приложения будет добавьте дополнительное время обработки.