Фактически это не второй скрипт, а фикс предыдущего.
Напоминаю задачу: определить, что браузер посетителя IE6 или более древний.
В Internet Explorer в navigator.appVersion
первой идет версия движка, а потом уж все остальное. Примерно так:
4.0 (compatible; MSIE 6.0; Windows NT 5.2; Win64; x64; SV1; .NET CLR 2.0.50727)
Исправленная функция:
function detectIE6(){
var browser = navigator.appName;
if (browser == "Microsoft Internet Explorer"){
var b_version = navigator.appVersion;
var re = /\MSIE\s+(\d\.\d\b)/;
var res = b_version.match(re);
if (res[1] <= 6){
return true;
}
}
return false;
}
Для выборки части строки использовались регулярные выражения.
9 Комментариев :
отлично, пригодилось
запользовал, сенкс
Пасибо, заюзал. Бой шестому ослу.
а так нельзя разве?
if(indexOf("MSIE 6.0")!==-1){ ...
вот так даже
((navigator.userAgent).indexOf("MSIE 6.0"))?alert('ie 6'):alert("не ie 6");
вот правильно
((navigator.userAgent).indexOf("MSIE 6.0")!==-1)?alert('ie 6'):alert("не ie 6");
Нельзя. ИЕ иногда пускает 2 версии например в 8 он пускает 2 строки MSIE 8.0 и далее MSIE 6.0
а не проще ли тогда сделать (navigator.userAgent).slice(0,40) - например?? а потом уже наити через indexOf
if(typeof document.body.style.maxHeight==="undefined"){alert(''ie)}
Отправить комментарий
Жги!