Problemas y eventos

¿Hola qué tal?.
Tengo un problema desde hace más de un mes y no logro encontrar una solución.
Tengo una página web donde se precargan 16 imágenes y en cada una de ellas he colocado un "onLoad", mediante JavaScript, a unas funciones determinadas y un tag <EMBED.........> con un fichero de música que sonará cuando el cursor pase por encima de una de ellas.
Hasta aquí una escueta descripción.El problema es que cuanto el navegador de Netscape encuentra la etiqueta <EMBED ......> se pone a ejecutar Java correspondiente al plug-in y no que coge los event durante ese rato de ejecución de Java, es decir de los 16 "onLoad" pierdo más o menos 10 e incluso pierdo, y no siempre, el "onLoad" de la etiqueta <BODY ......>, con lo que el resto de JavaScript se queda sin ejecutar.
He probado todo lo que se, pero no resuelvo nada. Solo deciros que en el Explorer funciona correctamente.
Espero que alguno de vosotros pueda ayudarme. GRACIAS
1

1 Respuesta

7.950 pts.
El problema reside en que el evento onLoad en el tag IMG no funciona en Netscape. Por lo tanto, todo planteamiento del sistema que tienes montado solo funcionará en Explorer. ¿Solución para Netscape? Pasa por eleminiar los eventos onLoad en Netscape y en el onLoad del tag BODY llamar a una función que vaya preguntando por las imágenes del documento si existe el objeto IMG correspondiente.
Para que no te ejecute los EMBED al cargar el documento prodías setearlos a hidden hasta que se ejecute el onLoad del BODY.
Gracias "Manz" por ser tan rápido pero no entiendo el párrafo siguiente: "Para que no te ejecute los EMBED al cargar el documento prodías setearlos a hidden hasta que se ejecute el onLoad del BODY." y no se como hacerlo.
Un saludo.
UFF! Ahora que lo he vuelto a leer veo que no se entiendo muy bien, perdona.
El tag EMBED tiene el atributo HIDDEN con dos posibles valores: TRUE o FALSE. Por defecto es FALSE y el navegador cuando encuentra ese tag pues lo ejecuta.
Lo que te quería decir es que si de entrada lo pones a TRUE el navegador debería obviar ese tag. Entonces en el evento onLoad del BODY podrías llamar a una función JavaScript para activar los EMBED's que te interesen y con eso te aseguras que la página ya está totalmente cargada.
¿Creo qué era esto lo que necesitabas verdad?
Hola "manz".
El HIDDEN del que me hablas solo sirve para presentar el visualizador del plug-in en el navegador (FALSE no ves el visualizador y TRUE ves el visualizador).
Si activo la etiqueta EMBED después de cargar la página (onLoad):
document.open()
document.write('<embed name=....... ......>')
document.close()
El resto de Javascript se me queda bloqueado, no funciona.
Si lo activo en una capa:
document.layers["Mycapa"].document.open()
document.layers["Mycapa"].document.write('<embed name="mymusica src=" ....... ......>')
document.layers["Mycapa"].document.close()
el resto de comandos JavaScript funciona, pero no tengo acceso a poner en play la música:
document.layers["Mycapa"].document.mymusica.play(true)
Me da un error en la secuencia del plug-in, como si no aceptase esa propiedad desde una capa. No lo sé.
Un saludo.
La cosa se pone fea... el error que te da de secuencia de plug-in podría ser producido por la falta del tipo MIME adecuado.
Prueba a especificar uno si no lo pones (uno adecuado claro, je je!)...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas