Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: paramonso en 08 de Marzo 2018, 11:53
-
Hola. Dejo el ejercicio del tema CU01170E jerarquia objetos javascript forms elements images navigator, del tutorial de programación JavaScript básico de aprenderaprogramar.
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo aprenderaprogramar.com</title>
<meta charset="utf-8">
<script type="text/javascript">
var navegadorEnUso=window.navigator.userAgent;
var bool=false;
var nav="";
function expresionesRegulares()
{
var msg="";
var navegador=[/Chrome/,/Safari/,/Opera/,/Firefox/,/MSIE/];
navegador.forEach(function (elemento, indice)
{
if (navegador[indice].test(navegadorEnUso) && bool==false)
{
if (indice==0){nav=" Google Chrome"}
if (indice==1){nav=" Apple Safari"}
if (indice==2){nav=" Opera"}
if (indice==3){nav=" Mozilla Firefox"}
if (indice==4){nav=" Microsoft Internet Explorer"}
bool=true;
}
});
if (bool)
{
msg=msg+"<strong>EXPRESIONES REGULARES</strong><br/><br/>"
msg=msg+"Usted esta usando el navegador :"+nav+"<br/> " ;
}
else {
nav="Navegador desconocido";
}
document.all.pizarra.innerHTML=msg;
}
function IndexOff()
{
var msg="";
msg=msg+"<strong>INDEXOF</strong><br/><br/>"
if (navegadorEnUso.indexOf("Chrome")!=-1){nav=" Google Chrome"}
else if (navegadorEnUso.indexOf("Safari")!=-1){nav=" Apple Safari"}
else if (navegadorEnUso.indexOf("Opera")!=-1){nav=" Opera"}
else if (navegadorEnUso.indexOf("Firefox")!=-1){nav=" Mozilla Firefox"}
else if (navegadorEnUso.indexOf("MSIE")!=-1){nav=" Microsoft Internet Explorer"}
else {
nav="Navegador desconocido";
}
msg=msg+"Usted esta usando el navegador :"+nav+"<br/> " ;
document.all.pizarra.innerHTML=msg;
}
</script>
<style type="text/css">
body{background-color:green;}
h1,h2,h3{
text-align:center;
margin:0;
padding:0;
color:white;
width:300;
height:200;
}
.boton {
border:outset white 2px;
width:200px;
border-radius:25px 25px;
box-shadow:3px 3px 2px 2px #AFF6AF;
text-align:center;
background-color:#90EE90;
color:black;
font-size:19px;
margin-top :15px;
margin-left:5px;
margin-bottom:5px;
}
.boton {margin-left:150px;}
.boton:hover {
border:inset 2px green;
box-shadow:3px 3px 2px 2px #0BF50B ;
}
#pizarra {
width:500px;
background-color:black;
border:groove red 8px;
border-radius:25px 25px;
color:white;
font-size:19px;
text-align:center;
padding:15px;
overflow:hidden;
float:left;
margin-left:10px;
margin-top:10px;
}
#Pizarras{float:left;}
</style>
</head>
<div id="cabecera">
<h2>Cursos aprenderaprogramar.com</h2>
<h3>Ejercicio CU01170E<br/>Jerarquia de objetos JavaScript</h3>
</div>
<div id="Pizarras">
<div class="boton" onclick="expresionesRegulares()">Expresiones Regulares</div>
<div class="boton" onclick=" IndexOff()">IndexOf</div>
<div id="pizarra"></div>
</body>
</html>
He probado el código en los navegadores Google Chrome, Opera, Mozilla Firefox y Microsoft Internet Explorer.
En los tres primeros navegadores las funciones de Expresiones regulares e indexOf funcionan bien, en MSIE solo funciona la de indexOf.
¿ A que se debe esto ?
Gracias un saludo. ;)
-
Buenas, buena presentación y buen código. En mi caso con MSIE tampoco ha funcionado. En primer lugar, debido a la configuración de seguridad del navegador. A mí me aparece el mensaje "Internet Explorer no permitió que esta página web ejecutara scripts o controles ActiveX en el equipo". Si le indico "Permitir" en la parte de expresiones regulares sigue sin funcionarme, y en la parte de indexOf me aparece "Usted está usando el navegador: Navegador desconocido".
En window.navigator.userAgent lo que me devuelve es: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; rv:11.0) like Gecko
Mozilla era la mascota de Netscape, y Netscape fue uno de los navegadores más populares (o el más popular) en la época en que internet se expandió y comenzó a ser usado por todo el mundo. Confunde porque cuando vemos Mozilla normalmente pensamos en Mozilla Firefox, pero en este caso no es el user-agent de Firefox sino de una versión del Explorer.
Tradicionalmente siempre que los navegadores eran Microsoft Internet Explorer, en el user-agent string aparecía MSIE, pero hay versiones donde no aparece y tendrían que ser identificados de otra manera.
En fin, un pequeño lío. De cualquier forma, el objetivo en el curso es tener una idea general sobre el reconocimiento de navegadores y por ese lado misión cumplida.
Salu2