На моей веб-странице у меня есть этот CSS:
tr:hover {
background-color: #f0f;
}
, который хорошо работает во всех браузерах, кроме старого доброго IE. Я знаю, что могу просто написать несколько jQuery для добавления и удаления класса при наведении мыши, но я бы предпочел не ставить в тупик (хотя и немного) все другие браузеры, которые поддерживают :hover
должным образом - поэтому я хочу Применяйте это поведение JS только для браузеров, которые изначально не поддерживают чистое решение CSS.
Конечно, мы все знаем, что $.browser
устарело, и мы все знаем, что перехват браузера - плохая вещь, и на каждый другой вопрос в SO есть множество ответов в духе "ты не должен проверьте для браузера , проверьте для функции", и это все хорошо в волшебной сказочной стране, где живут эти люди, но остальным из нас нужно, чтобы наши сайты работали и хорошо смотрится в IE6 и других браузерах.
$.support
выглядит так для IE6 & 7:
leadingWhitespace: false
tbody: false
objectAll: false
htmlSerialize: false
style: false
hrefNormalized: false
opacity: false
cssFloat: false
scriptEval: false
noCloneEvent: false
boxModel: true
Как же я должен использовать эти свойства, чтобы определить, будет ли tr:hover
работать?
Да, я знаю, что в этом примере это довольно безобидно, и я мог бы, вероятно, сойти с рук, либо не предоставив пользователям IE эту функцию, либо симулировать ее во всех браузерах, но это не главное. Как вы можете перестать использовать $.browser
, когда $.support
не подходит к его замене?