Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/09/2005, 16:48
angsanchez
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 20 años, 3 meses
Puntos: 3
Hola
Caramba, pues parece muy claro: tienes una variable y una acción para si es Explorer (supongo que Opera se está haciendo pasar por él) y otra para si es Netscape4, pero si es otro navegador no le indica que haga nada.
Creo que el código que se está ejecutando para IE (innerHTML) es perfectamente reconocido por Firefox, Mozilla y Netscape 7, o sea que tienes dos soluciones:
a) dejar que se ejecute ese código para todo lo que no sea Netscape4; puede que con algún navegador raro falle, pero de todos modos tal como está ahora no haría nada.
b) poner una condición para detectar navegadores Gecko y que haga lo mismo que para IE.

Por otro lado, dudo que tal como está escrito funcione:
<font color=#000000 font face=Times New Roman font weight= bold font-size= 12pt>
¡eso no es HTML!

Además, la detección de navegador debría hacerse por la función que se va a usar. Te propongo este cambio de código (he retocado varias cosas, si no entiendes algo pregunta):
Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title></title>
<style type="text/css">

BODY{

	margin-top: 0px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
background-attachment: fixed;
background-repeat: repeat;
background-position: 0 0;
}
</style>
</head>

<body onload="typeLayer()" onunload="clearTimeout(tID)" topMargin="0" bgcolor="#E8E8E8" background="back.JPG">
<script type="text/javascript">
<!--
var isNN4 = (document.layers);
var isCompat = document.getElementById && document.body.innerHTML

tID = 0;
i = 0;
spd  = 40; 
str= " ¡Hola! ésta es la máquina de escribir<br>Bienvenidos a mi sitio web, Texto de prueba, 1234 Texto - Texto de prueba, 1234 Texto "
function typeLayer() {
 if(i >  str.length){
  clearTimeout(tID);
 } else {
  msg = str.substring(0,i);
  var msg = '<font color="#000000" face="Times New Roman" size="12pt"><b>'+msg+'</b></font>'
  if(isNN4){
   document.layers['layer1'].document.write(msg);
   document.layers['layer1'].document.close();
  }
  if(isCompat){
   document.getElementById('layer1').innerHTML = msg;
  }
  i++;
  tID = setTimeout("typeLayer()",spd);
 }
}
//-->
</script>


<table border="0" width="100%" height="100%" cellspacing="0" cellpadding="0">
  <tr>
    <td width="100%" valign="bottom" align="right">
    </td>
  </tr>
</table>

<p><span id="layer1"
style="LEFT: 140px; RIGHT: 140px; POSITION: absolute; TOP: 40px; color: rgb(0,0,0); font-family: 'Times New Roman'; font-size: 12pt; font-weight: bold"></span>
</p>
<!--webbot bot="HTMLMarkup" startspan TAG="XBOT" --></SCRIPT><!--webbot bot="HTMLMarkup" endspan
-->
<script type="text/javascript">
if (isNN4) document.write('<layer id="divStayTopLeft"></layer>')
else document.write('<div id="divStayTopLeft" style="position:absolute">')
</script>


</body>
</html> 
__________________
Angel :cool: