¿Cómo determinar las características del navegador?
From Joomla! Documentation
Diferentes navegadores web, en ocasiones, muestran diferencias en la forma en que se procesa una página. Por esta razón, puedes desear averiguar qué navegador usa un visitante, con el fin de utilizar algunos parámetros CSS específicos del navegador.
El siguiente JavaScript define un objeto de detección simple del navegador, que determina el nombre del navegador y la versión por la decodificación de la cadena navigator.userAgent
.
function browserDetect()
{
var browserNames=new Array("Opera", "MSIE","Netscape","Firefox");
this.name="NK";
this.mainVersion="NK";
this.minorVersion="NK";
for (var i=0; i< browserNames.length; i++)
{
var pattern='('+browserNames[i]+')'+'.([0-9]+)\.([0-9]+)';
var myRegExp=new RegExp(pattern);
if (myRegExp.test(navigator.userAgent))
{
var results=myRegExp.exec(navigator.userAgent);
this.name=results[1];
this.mainVersion=results[2];
this.minorVersion=results[3];
break;
}
}
}
Con el fin de utilizar esto en un script, debes crear una instancia de este objeto:
var browser = new browserDetect();
La propiedad browser.name
te dará el nombre del navegador (MSIE, Opera, Netscape o Firefox), browser.mainVersion
te dará el número de versión principal y browser.minorVersion
te dará el número de versión menor.
Sin embargo, debes ser consciente de que esto no es infalible y es generalmente mejor (en opinión de este escritor) evitar tener que escribir el código en función de un navegador específico en medida de lo posible.