На моей веб-страницы, у меня есть этот CSS:jQuery.browser устарел, но как вы используете .support?
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
не подходит для его замены?
+1, потому что это, вероятно, более надежно, чем нюхание агента пользователя, но оно не касается проблемы, которая заключается в том, что вы хотите, чтобы ваш код был передовым: если IE9 выходит и поддерживает функцию X, используя IE - только условный комментарий не будет работать. (Я знаю, что вы могли бы сделать '[if IE <9]' или что-то еще, но это все еще нюхает. – nickf
Преимущество CCs в том, что их нельзя подделать или, по крайней мере, не повредить ваш реестр. Желаю jQuery не осуждал $ .browser. Должен был длинный список писем к мистеру Ресигу: «Вы делаете это неправильно!» – alex