jQuery.support
« Обратно к странице инструментов
jQuery.support
Добавлено в jQuery 1.3 Коллекция свойств, которая показывает наличие различных особенностей или ошибок в браузере.
Много таких свойств низкоуровневые, поэтому вряд ли они будут полезны в ежедневной разработке, но все же большинство из них используются разработчиками ядра и дополнений.
Значения всех поддерживаемых свойств определяются при помощи функций обнаружения (но не пытайтесь использовать их для сниффинга).
Несколько отличных ресурсов, поясняющих как работает обнаружение особенностей браузера:
- http://peter.michaux.ca/articles/feature-detection-state-of-the-art-browser-scripting
- http://yura.thinkweb2.com/cft/
- http://www.jibbering.com/faq/faq_notes/not_browser_detect.html
Встроенные в jQuery.support тесты:
- boxModel: устанавливается в true, если страница обрабатывается браузером в соответствие с моделью W3C CSS Box Model (в настоящий момент не поддерживается в IE 6 и 7, когда они в режиме Quirks Mode). Пока документ полностью не загружен, данное свойство имеет значение null.
- cssFloat: устанавливается в true, если style.cssFloat используется для доступа к текущему значению CSS float (в настоящий момент не поддерживается в IE, там используется styleFloat).
- hrefNormalized: устанавливается в true, если браузер оставляет нетронутыми результаты getAttribute(»href»)(в настоящий момент не поддерживается в IE).
- htmlSerialize: устанавливается в true, если браузер правильно упорядочивает элементы ссылок, когда используются innerHTML (в настоящий момент не поддерживается в IE).
- leadingWhitespace: устанавливается в true, если браузер сохраняет пустые места при использовании innerHTML (в настоящий момент не поддерживается в IE 6-8).
- noCloneEvent: устанавливается в true, если браузер не клонирует обработчики событий, когда клонируются элементы (в настоящий момент не поддерживается в IE).
- objectAll: устанавливается в true, если выполнение getElementsByTagName(»*») относительно объекта возвращает все дочерние элементы (в настоящий момент не поддерживается в IE 7 и IE 8).
- opacity: устанавливается в true, если браузер правильно интерпретирует свойство видимости элемента (в настоящий момент не поддерживается в IE, там используются alpha-фильтры).
- scriptEval: устанавливается в true, если при использовании appendChild/createTextNode для встраивания скриптов они исполняются (в настоящий момент не поддерживается в IE, там используется .text для встраивания исполняемых скриптов).
- style: устанавливается в true, если функция getAttribute(»style») способна возвращать стиль, указанный элементом (в настоящий момент не поддерживается в IE – там используется cssText).
- tbody: устанавливается в true, если браузер позволяет создание элементов таблицы без блоков tbody (в настоящий момент не поддерживается в IE, где блоки tbody вставляются автоматически, если их нету в строке, прикрепленной к innerHTML).