Ver Mensaje Individual
  #4 (permalink)  
Antiguo 28/12/2010, 02:48
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: perdida del foco en celda al mostrar div

Igual te he hecho perder tiempo, no consigo que vuelva a actuar como lo hacia ayer cuando te respondí el post.

Lo que veo ahora es que al mover el mouse también desaparece en IE6, aquí no puedo probar con nada más.

De hecho la lógica dice que el evento onMouseOut se lance puesto que se ha interpuesto una capa.

Si sitúas el vértice superior izquierdo de la capa justo al lado del cursor podría funcionarte...así mantendrías el foco en la celda.


Código HTML:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <title>Documento sin t&iacute;tulo</title>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. <script language="JavaScript" type="text/JavaScript">
  5. function showdiv(e,id){
  6.     var x = e.clientX;
  7.     var y = e.clientY;
  8.    var div=document.getElementById('flotante');
  9.    detalle=document.getElementById(id);
  10.    div.innerHTML=detalle.innerHTML
  11.    div.style.left=x+4;
  12.    div.style.top=y+4;
  13.    div.style.display='';
  14. }
  15. function hidediv() {
  16.     var div = document.getElementById('flotante');
  17.     div.style.display='none';
  18. }  
  19.  
  20.   </script>
  21. <style type="text/css">
  22. <!--
  23. #flotante {
  24.     background-color: #FF0000;
  25.     position: absolute;
  26. }
  27. -->
  28. </head>
  29.  
  30.   <tr>
  31.     <td id="c1" onmouseover="showdiv(event,this.id)" onmouseout="hidediv()">1</td>
  32.     <td id="c2"  onmouseover="showdiv(event,this.id)" onmouseout="hidediv()">2</td>
  33.   </tr>
  34.   <tr>
  35.     <td id="c3"  onmouseover="showdiv(event,this.id)" onmouseout="hidediv()">3</td>
  36.     <td id="c4"  onmouseover="showdiv(event,this.id)" onmouseout="hidediv()">4</td>
  37.   </tr>
  38. <div id="flotante" style="display:none" >123</div>
  39. </body>
  40. </html>
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.