Si deseas obtener y/o mostrar Datos de tus Visitantes como su Navegador y usas la variable de JavaScript navigator.appName te vas a encontrar con un par de errores, por ejemplo: si usas Google Chrome esta te va a decir que estas usando Netscape (para quien no lo conozca era un navegador extremadamente popular hasta que se volvió licenciado, y creo o supongo que el error en appName es por que Chrome tiene algunos fundamentos en dicho navegador), este truco lo aprendi hace ya algun tiempo en JavaScripter.net y le hice algunas modificaciones.
Pruébalo:
navigator.appName : Netscape
Navegador : Netscape
Versión : 5
Tu navegador es : Netscape 5
Código:
<script language="JavaScript">
var nVer = navigator.appVersion;
var nAgt = navigator.userAgent;
var browserName = navigator.appName;
var nameOffset,verOffset,ix;
var fullVersion = ''+parseFloat(navigator.appVersion);
if ((verOffset=nAgt.indexOf("MSIE"))!=-1) {
browserName = "Microsoft Internet Explorer";
}
else if ((verOffset=nAgt.indexOf("Opera"))!=-1) {
browserName = "Opera";
}
else if ((verOffset=nAgt.indexOf("Chrome"))!=-1) {
browserName = "Chrome";
}
else if ((verOffset=nAgt.indexOf("Safari"))!=-1) {
browserName = "Safari";
}
else if ((verOffset=nAgt.indexOf("Firefox"))!=-1) {
browserName = "Firefox";
}
// para otros navegadores busca el nombre al final del userAgent
else if ( (nameOffset=nAgt.lastIndexOf(' ')+1) < (verOffset=nAgt.lastIndexOf('/')) )
{
browserName = nAgt.substring(nameOffset,verOffset);
fullVersion = nAgt.substring(verOffset+1);
if (browserName.toLowerCase()==browserName.toUpperCase()) {
browserName = navigator.appName;
}
}
if ((ix=fullVersion.indexOf(";"))!=-1) fullVersion=fullVersion.substring(0,ix);
if ((ix=fullVersion.indexOf(" "))!=-1) fullVersion=fullVersion.substring(0,ix);
document.write('navigator.appName : '+navigator.appName+'<br>');
document.write('Navegador : '+browserName+'<br>');
document.write('Versión : '+fullVersion+'<br>');
document.write('Tu navegador es : '+browserName+' '+fullVersion+'<br>');
</script>
Navegador : Netscape
Versión : 5
Tu navegador es : Netscape 5
Código:
<script language="JavaScript">
var nVer = navigator.appVersion;
var nAgt = navigator.userAgent;
var browserName = navigator.appName;
var nameOffset,verOffset,ix;
var fullVersion = ''+parseFloat(navigator.appVersion);
if ((verOffset=nAgt.indexOf("MSIE"))!=-1) {
browserName = "Microsoft Internet Explorer";
}
else if ((verOffset=nAgt.indexOf("Opera"))!=-1) {
browserName = "Opera";
}
else if ((verOffset=nAgt.indexOf("Chrome"))!=-1) {
browserName = "Chrome";
}
else if ((verOffset=nAgt.indexOf("Safari"))!=-1) {
browserName = "Safari";
}
else if ((verOffset=nAgt.indexOf("Firefox"))!=-1) {
browserName = "Firefox";
}
// para otros navegadores busca el nombre al final del userAgent
else if ( (nameOffset=nAgt.lastIndexOf(' ')+1) < (verOffset=nAgt.lastIndexOf('/')) )
{
browserName = nAgt.substring(nameOffset,verOffset);
fullVersion = nAgt.substring(verOffset+1);
if (browserName.toLowerCase()==browserName.toUpperCase()) {
browserName = navigator.appName;
}
}
if ((ix=fullVersion.indexOf(";"))!=-1) fullVersion=fullVersion.substring(0,ix);
if ((ix=fullVersion.indexOf(" "))!=-1) fullVersion=fullVersion.substring(0,ix);
document.write('navigator.appName : '+navigator.appName+'<br>');
document.write('Navegador : '+browserName+'<br>');
document.write('Versión : '+fullVersion+'<br>');
document.write('Tu navegador es : '+browserName+' '+fullVersion+'<br>');
</script>
Explicación: Lo que hace este código es Buscar mediante IndexOf la existencia del nombre del explorador en la variable navigator.userAgent, tambien corta la variable navigator.appVersion ya que viene con otra información.
Importante: Para tu web puedes quitar los 3 primeros document.write, ya que estos son solo para que compares aquí y veas las variables.
Este código lo puedes pegar donde quieras que aparezca la información y listo solucionado el problema del nombre del navegador.
Me resultó muy útil... muchas gracias!!!
ResponderEliminarSi es un código que puede ser bastante útil, no olvides decir que lo viste en http://trucosw3.blogspot.com
ResponderEliminar