Benedikt: Layer verschwindet!

Beitrag lesen

Hallo Johannes und alle anderen Foren-Benutzer,

also der QC:

1. CSS-Klasse des div-Layers
.flyout {
 background-color: #CCCCCC;
 position: absolute;
 visibility: hidden;
}
----------------------------------------------------------------
2. Position des layers berechnen (bisher nur IE)
function GetElementLeft(Element)
{
    var LeftPos = Element.offsetLeft;
    var ParElement = Element.offsetParent;
    while (ParElement != null)
    {
        LeftPos += ParElement.offsetLeft;
        eParElement = eParElement.offsetParent;
    }
    return nLeftPos;
}

function GetElementTop(Element)
{
    var TopPos = Element.offsetTop;
    var ParElement = Element.offsetParent;
    while (ParElement != null)
    {
        TopPos += ParElement.offsetTop;
        ParElement = ParElement.offsetParent;
    }
    return TopPos;
}

div_xyz.style.top = GetElementTop(td_xyz);
div_xyz.style.left = GetElementLeft(td_xyz) + td_xyz.offsetWidth;
----------------------------------------------------------------
3. Zum Anzeigen, wenn der Cursor über ein Tabellenfeld fährt
function showdiv(p_div) {
 var div = document.getElementById(p_div);
 var i;
 for(i = 0; i < document.getElementsByTagName("div").length; i++) {
  if (document.getElementsByTagName("div")[i].style.visibility == "visible")
   document.getElementsByTagName("div")[i].style.visibility = "hidden";
 }
 div.style.visibility = "visible";
}
----------------------------------------------------------------
4. Zum Verbergen wenn der Layer verlassen wird (onMouseOut)
function hidediv(div) {
 if (document.getElementById(div).style.visibility == "visible")
  document.getElementById(div).style.visibility = "hidden";
}
----------------------------------------------------------------
5. Der Layer selbst
<div id="div_hdb" class="flyout" onMouseOut="hidediv('xyz')">
...
</div>