Conditionizr для jQuery – подгрузчик условий для скриптов и стилей



Условные комментарии. Кто из веб-разработчиков хотя бы раз в жизни не столкнулся с необходимостью использовать условные комментарии для IE? IE так и не смог обойти эти недостатки, но и в других браузерах иногда можно извлечь преимущество, если использовать их особые способности. Как было бы классно, если бы мы могли предоставлять наиболее оптимальный контент каждому пользователю, независимо от используемого им устройства или браузера. jQuery-плагин Conditionizr предлагает нам решение для большинства современных веб-разработок.

Conditionizr – отличное дополнение к Modernizr

Перво-наперво, Conditionizr не предназначен для замещения Modernizr, к тому же, он на это и не способен. Вместо этого, он разрабатывался в качестве отличного дополнения, поэтому оба эти решения будут отлично взаимодействовать между собой. Conditionizr основан на том же классовом подходе, что и Modernizr, поэтому интеграция будет легкой и беспроблемной.

Посредством использования функции определения на базе javascript, Conditionizr способен не только определять, какие браузеры используются клиентом, но и также то, какую ОС они используют, и имеет ли используемое ими устройство поддержку Retina-дисплеев. При помощи полученных данных о способностях устройства, Conditionizr добавляет соответствующие классы в HTML-элементы, а затем обрабатывает необходимые CSS и javascript-коды.

Вместо того, чтобы добавлять условие в разметку, Conditionizr работает полностью отдаленно от нее. Все, что от вас требуется, это вызвать скрипт сразу после jQuery и Modernizr (если вы хотите извлечь преимущество из его использования), а затем добавить конфигурационную часть в головную часть вашего документа. Все поддерживаемые браузеры позволяют выставлять настройки относительно того, насколько сильным будет влияние Conditionizr. Вы можете активировать или деактивировать использование определенных классов, стилей и скриптов, и все это настраивается по-отдельности. Таким же образом вы можете определять, должен ли Conditionizr заботиться об ОС или должен ли определять экраны Retina.

Стандартный конфигурационный скрипт должен выглядеть следующим образом:
<script>
$(function() {
$('head').conditionizr({
debug : false,
scriptSrc : 'js/conditionizr/',
styleSrc : 'css/conditionizr/',
ieLessThan : { active: false, version: '9', scripts: false, styles: false, classes: true, customScript: 'none'},
chrome : { scripts: false, styles: false, classes: true, customScript: 'none' },
safari : { scripts: false, styles: false, classes: true, customScript: 'none' },
opera : { scripts: false, styles: false, classes: true, customScript: 'none' },
firefox : { scripts: false, styles: false, classes: true, customScript: 'none' },
ie10 : { scripts: false, styles: false, classes: true, customScript: 'none' },
ie9 : { scripts: false, styles: false, classes: true, customScript: 'none' },
ie8 : { scripts: false, styles: false, classes: true, customScript: 'none' },
ie7 : { scripts: false, styles: false, classes: true, customScript: 'none' },
ie6 : { scripts: false, styles: false, classes: true, customScript: 'none' },
retina : { scripts: false, styles: false, classes: true, customScript: 'none' },
mac : true,
win : true,
x11 : true,
linux : true
});
});
</script>

Как вы, вероятно, уже заметили, Conditionizr также позволяет вам использовать собственные скрипты, что позволяет вам условно определять браузеры или устройства в зависимости от конкретных требований проекта или ваших личных предпочтений. Таким образом, вы не ограничены функционалом, который «придумали» разработчики Todd Motto и Mark Goodyear.

Conditionizr доступен в Github абсолютно бесплатно. Так как проект распространяется по лицензионному соглашение MIT, его можно использовать как в личных, так и в коммерческих проектах.

Ссылки:
* Сайт проекта
* Документация
* Репозиторий Conditionizr

Добавить комментарий

Нам важно знать ваше мнение. Оставьте свой отзыв или ответ

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent

Комментариев 0

Новые обсуждения на Форуме