JQuery работает неправильно, из-за @ font-face - PullRequest
10 голосов
/ 22 июля 2010

У меня проблема с jQuery и @ font-face.

Мне нужно определить высоту <div>, которая работает нормально, но затем небольшая задержка загрузки шрифтов, и как только они это делают, шрифты @ font-face на самом деле больше, чем резервные шрифты, поэтому высота меньше, чем должна быть.

Я пытался использовать Modernizr, но это бесполезно, поскольку он только определяет, способен ли браузер использовать @ font-face, а не загружены ли шрифты или нет.

Код jQuery находится в $ (document) .ready, но я думаю, что шрифты не задерживают запуск. Любые идеи кто-нибудь?

Ответы [ 3 ]

16 голосов
/ 29 июля 2010

Идеальное решение было, как указывал Адам , использовать $(window).load вместо $(document).ready

$(window).load(function(){  
  $(".column").equalHeights();
}); 
1 голос
/ 24 июля 2010

API шрифтов Google выглядит так, как будто оно работает, если вы загружаете шрифты из Google, TypeKit или Ascender.Но если вы используете что-то другое (например, другой шрифт, загруженный с fontsquirrel), вы можете попробовать что-то вроде this , чтобы выяснить, какой шрифт будет отображаться.Вы также можете проверить это обсуждение по определению используемого шрифта Изменение размера шрифта для тела на основе семейства шрифтов с помощью jQuery

0 голосов
/ 23 июля 2010

Возможно, вы захотите проверить Google Font API (http://code.google.com/apis/webfonts/docs/webfont_loader.html).. Я считаю, что он динамически загружает шрифт и запускает ряд событий, с которыми вы можете работать (для изменения размера).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...