IE7 strikes back
23 июля 2008
Джеми Томсон обнаружил неприятную штуку в IE7. Ещё более неприятную, чем недавнее включение «6.0» в строку user agent.
Если строка user agent длиннее 260 символов, она магическим образом превращается в «Mozilla/4.0 (compatible; MSIE 6.0)».
Чем это плохо? В том же jQuery и во многих других решениях для определения браузера используется как раз строчка user agent, поэтому некоторые скрипты, например ThickBox, начинают магическим образом глючить.
А ведь такое переполнение вполне реально! Все кому не лень этот самый user agent удлиняют. Например, Mail.ru Agent и другие тулбары, а также различное вредоносное ПО…
В общем, на user agent надеяться нельзя. Просто проверяйте, доступен ли функционал перед его использованием.
Комментарии RSS по email OK
мда... последнее время стал задумываться о переходе от jQuery на какой-нибудь другой фреймворк, догадываюсь, он еще из-за тупого определения браузеров не работает в старых операх, потому что в них юзер агент по умолчанию, как у старых версий IE :-/
На самом деле для jQuery это легко фиксится и бросать такой удобный фреймворк из-за такого бага не стоит… хотя альтернативы тоже неплохие.