Обнаружение версии IE в режиме эмуляции через условную компиляцию JavaScript
В свежей статье в блоге IE есть ответ на вопрос как обнаружить версию браузера Internet Explorer в любом режиме (например, в режиме эмуляции другой версии):
@_jscript_version statement is actually an indicator of which version of JScript is in use by the browser as a whole. In ALL document modes of IE9, this statement currently equates to “9”. In ALL document modes of IE8 it equates to “5.8” and in IE7 it is “5.7”
Отсюда вывод:
/*@cc_on
@if( @_jscript_version == 5.8 )
// Это полюбому IE 8
...
@end
@*/
То есть (перевожу) «@_jscript_version» в IE8 всегда равно «5.8», в IE7 — «5.7» , а в IE9 — «9».
5.7 — это ещё и <a href=» http://erik.eae.net/archives/2007/12/14/20.07.27/%22%3EIE6 SP3</a>, сюрприз!
Комментарий для greli.livejournal.com:
Фигассе. Пишешь-пишешь, что не HTML, даже болдом написал (надо ещё сделать мигающую надпись), а всё равно HTML вставляют.
А по существу, надо найти теперь комп с IE6, поставить туда эту библиотеку и посмотреть чему там будет равно @_jscript_version. Мда.
Комментарий для greli.livejournal.com:
Ну и это не IE6 SP3, а Windows XP SP3.