Исключение некоторых тегов из системы шрифтов Cufon.
Вопрос
Я использую Cufon для загрузки хороших шрифтов с помощью JavaScript.И, так как у меня много тегов, я использую следующую инструкцию для замены всех тегов:
Cufon.replace('*', { fontFamily: 'MyFont' });
Но недавно я решил исключить из замены некоторые классы тегов.Есть ли инструкция типа:
Cufon.exclude('TheClassToExclude');
?
Решение
С использованием *
в качестве селектора - довольно плохая идея.Во-первых, это займет навсегда чтобы загрузить страницу и запустить скрипт, поскольку Cufon блокирует браузер во время рисования.Во-вторых, в зависимости от браузера ваш текст не будет видимым для выбора.(В настоящее время FF3.6 не отображает выделение в тексте Cufon)
Но чтобы ответить на ваш вопрос, вы можете указать cufon установить определенные классы, просто добавьте классы к элементам, которые вы хотите нарисовать с помощью Cufon, а не наоборот.
Cufon.replace('h2.cufon', { fontFamily: 'MyFont' });
Редактировать:
Только что обнаружил, что если вы используете библиотеку Javascript, например jQuery, вы можете использовать другой селектор для исключения элементов.
Cufon.replace('h2:not(.nocufon)', { fontFamily: 'MyFont' });
Это заменит все H2
элементы с текстом Cufon, за исключением тех, у которых есть nocufon
сорт.
Другие советы
При необходимости вы можете использовать символы '>, чтобы выбрать точный элемент/класс элемента.Я использую этот способ на сайте Drupal, чтобы выбрать все ссылки на боковой панели уровня 2,
'#sidebar-left .menu-level-2>ul.menu>li>a'