Foros del Web » Programando para Internet » Javascript »

Javascript anda en IE pero no en Firefox

Estas en el tema de Javascript anda en IE pero no en Firefox en el foro de Javascript en Foros del Web. Estoy haciendo una página y de repente unas funciones muy simples Javascript me dejaron de andar en el Firefox. Yo había modificado algunas propiedades de ...
  #1 (permalink)  
Antiguo 20/12/2008, 14:11
Rodre
Invitado
 
Mensajes: n/a
Puntos:
Javascript anda en IE pero no en Firefox

Estoy haciendo una página y de repente unas funciones muy simples Javascript me dejaron de andar en el Firefox. Yo había modificado algunas propiedades de los divs con css. Dejo el código a ver si alguien encuentra lo que pasa.

Saludos y gracias.

CODIGO HTML:

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  <link rel="stylesheet" type="text/css" href="main.css">
  <script language="javascript">
  var cateover = '';
  var cateout = '';
  function over(cateover){
    document.getElementById(cateover).src='botones/'+cateover+'-hover.gif';
  }
  function out(cateout){
    document.getElementById(cateout).src='botones/'+cateout+'.gif';
  }
  function contacto(){
    document.getElementById('fotomain').src='img/fotocontacto.jpg';
  }
  </script>
  </head>
  <body>
    <div class="contenedor">
      <div class="divprincipal">
        <div class="divlinks">
          <table class="tablalinks">
            <tr>
              <td><img id="commercial" src="botones/commercial.gif" onmouseover="over('commercial');" onmouseout="out('commercial');" /></td>
              <td class="tdseparador">&nbsp;</td>
              <td><img id="personal" src="botones/personal.gif" onmouseover="over('personal');" onmouseout="out('personal');" /></td>
              <td class="tdseparador">&nbsp;</td>
              <td><img id="contact" src="botones/contact.gif" onmouseover="over('contact');" onmouseout="out('contact');" onclick="contacto();" /></td>
            </tr>
          </table>
        </div>
        <div class="subcontenedor">
          <div class="divfotos"> 
            <img id="fotomain" class="fotomain" src="img/fotomain.jpg" />
          </div>
        </div>
      </div>
    </div>
  </body>
</html> 
ESTILOS CSS:

Código:
.contenedor {
  height: 100%;
  width: 100%;
  text-align: center;
}

.divprincipal {
  width: 921px;
  height: 700px;
  background-image: url(img/fondomain.gif);
  margin: auto;
  position: relative;
  top: 50%;
  margin-top: -350px;
}

.divlinks {
  width: 700px;
  height: 50px;
  margin: auto;
  position: relative;
  top: 16%;
}

.tablalinks {
  margin: auto;
  position: relative;
  right: 20px;
}

#personal {
  cursor: pointer;
}

#commercial {
  cursor: pointer;
}

#contact {
  cursor: pointer;
}

.tdseparador {
  width: 90px;
}

.subcontenedor {
  width: 700px;
  height: 450px;
  position: relative;
  margin: auto;
}

.divfotos {
  width: 590px;
  height: 400px;
  margin: auto;
  overflow: hidden;
  position: relative;
  top: 47%;
}
  #2 (permalink)  
Antiguo 20/12/2008, 14:13
Rodre
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Javascript anda en IE pero no en Firefox

Lo que sucede es que en el explorer funciona bien el cambio de imagen del onmouse over, y el click y el firefox ni se mosquea. Como si no entendiese el javascript. Tampoco reconoce el cambio de cursor por css para las imagenes que están hecho llamando por id.
  #3 (permalink)  
Antiguo 20/12/2008, 15:44
Rodre
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Javascript anda en IE pero no en Firefox

El comportamiento es como si no reconociera los eventos onmouseover, onmouseout y onclick.
ME está volviendo loco esto. En IE funciona perfecto.

Si alguien se le ocurre algo agradecería muchísimo porque me está matando el tiempo esto.

Gracias.
  #4 (permalink)  
Antiguo 20/12/2008, 15:59
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: Javascript anda en IE pero no en Firefox

Qué te dice la consola de errores de Firefox?
  #5 (permalink)  
Antiguo 21/12/2008, 04:37
Avatar de Fernand0  
Fecha de Ingreso: septiembre-2005
Ubicación: Buenos Aires
Mensajes: 610
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: Javascript anda en IE pero no en Firefox

Código HTML:
<style>
.subcontenedor {
  width: 700px;
  height: 450px;
  position: relative;
  margin: auto;
}
.divfotos {
  width: 590px;
  height: 400px;
  margin: auto;
  overflow: hidden;
  position: relative;
  top: 47%;
}
</style> 
Estas tapando todo con esos divs.. cambia las medidas.. y te recomiendo que programes en FF... no en IE.... pero eso ya es gusto de cada uno
  #6 (permalink)  
Antiguo 21/12/2008, 05:16
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Javascript anda en IE pero no en Firefox

Cita:
Iniciado por Fernand0 Ver Mensaje
.. y te recomiendo que programes en FF... no en IE.... pero eso ya es gusto de cada uno
¡Excelente consejo!

Otro navegador bastante bueno y estandar es opera, pero es mejor controlar nuestras páginas con todos los que se disponga (yo suelo comprobarlas también en Safari y el nuevo Chrome)

Y busca las consolas de errores de cada uno.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 21/12/2008, 14:09
Avatar de buzu  
Fecha de Ingreso: octubre-2006
Ubicación: San Francisco, CA
Mensajes: 2.168
Antigüedad: 17 años, 6 meses
Puntos: 122
Respuesta: Javascript anda en IE pero no en Firefox

pasa this como parametro a tu fucnión y no uses getElementById, solo this.src=...
__________________
twitter: @imbuzu
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:09.