Aquí podría ser tu PUBLICIDAD


Java Applet z-index en Safari y más allá

votos
6

Un problema bien conocido con los Applets de Java en las páginas web es que los navegadores ignoran el índice Z de la etiqueta del applet frente a otros componentes de la página. No importa cómo coloque los elementos z-index en la página, los applets se colocarán encima de todo.

Existe una solución, conocida como el ajuste de iframe, como se describe aquí: http://www.oratransplant.nl/2007/10/26/using-iframe-shim-to-partly-cover-a-java-applet/ .

Sin embargo, esta solución no funciona en Safari 3 o 4 en Windows (suponiendo lo mismo para Mac).

¿Alguien sabe una forma de hacerlo funcionar en Safari?

¿Alguien tiene ideas sobre cómo presionar a Sun para solucionar el problema subyacente para que podamos evitar las cuñas torpes? Aquí hay un informe de error sobre el problema, http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6646289 , observe que ha estado abierto durante un año, sin embargo, otros informes de errores se remontan a muchos años atrás.

Esto es tan frustrante, ¿no entiende Sun que este es el tipo de cosa que margina a Java como una forma de hacer cosas geniales en el navegador? Te amo Java, pero no estás ayudando a tu situación ...

Publicado el 12/03/2009 a las 15:34
fuente por usuario jlarson
En otros idiomas...        العربية       

3 respuestas

votos
5

Hay una solución para el problema complicado. No es necesario tener el código dentro de una iframe. Podemos tener un maniquí iframesólo como una capa por encima del applet. Y luego un div absoluta con el texto fácilmente puede colocarse por encima iframe.

ejemplo de trabajo

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Applet z index issue</title>
<style>

.applet {width:400px; margin:0 auto; text-align:center; border:1px solid #000; left:40%; position:absolute }
.iframe {width:400px;  background:#fff; position:absolute; border:1px solid #f00; position:absolute; left:45%; top:20px; z-index:9; height:201px;}
.message { width:250px; border:1px solid #000; background:#fff; height:150px; color:#fff; text-align:center;  z-index:99; background:#555;  float:left; position:absolute; left:45%; top:20px}

 </style>
</head>

<body>
<div class="message">Message</div>
<div class="iframe"><iframe style="width:500px; height:205px; background:none; border:none"> </iframe></div>
<div class="applet">

<applet code="Bubbles.class" width="400" height="350">
Java applet that draws animated bubbles.
</applet>

</div>

</body>
</html>
Respondida el 14/02/2011 a las 04:02
fuente por usuario sandeep parkhande


Aquí podría ser tu PUBLICIDAD


votos
3

En realidad, el problema no está relacionado con el índice Z en absoluto. Es causada por el modelo de dibujo "en ventana" de Netscape Plugin API (NPAPI).

No puedes hacer nada al respecto (excepto la cuña). El autor del complemento debe reescribirlo usando la API sin ventana .

Respondida el 08/09/2009 a las 12:48
fuente por usuario Kornel

votos
2

Por un lado, Java en Mac está construido por Apple y no por Sun. En cuanto a los applets, ocultamos los applets cuando hay algo que aparece encima. Sin embargo, eso podría no ser suficiente para sus necesidades.

Respondida el 21/04/2009 a las 02:13
fuente por usuario gbvb