<div id="context" style="position:absolute;visibility:hidden>
-------------------------------------------------------------
<div id="context" style="position:absolute;visibility:hidden">
=====================================================================
    while(e=e.offsetParent){
    t+=e.offsetTop;
    l+=e.offsetLeft;
    }
----------------------------------
t-->x
l-->y

解决方案 »

  1.   

    setTimeout("showDiv(" + event + ",this )",1000);
      

  2.   

    <div id="context" style="position:absolute;visibility:hidden">
    This is some context shall show after 1 second.
    </div>
    <br>
    <br>
    <div id="tap">
     <a href="#"  id="link" onmouseover="delayShow(this)" onmouseout="delayHide()">Mouse Over Here</a> 
    </div>
    <script language=javascript>
    //show 
    function showDiv(event,e)
    {
        var y=e.offsetTop;
        var x=e.offsetLeft;
        while(e=e.offsetParent){
        x+=e.offsetTop;
        y+=e.offsetLeft;
        }
        var oDiv=document.getElementById("context");
        oDiv.style.visibility="visible";
        oDiv.style.backgroundColor="yellow";
        oDiv.style.border="solid black 1px";
        oDiv.style.left=x+30+"px";
        oDiv.style.top=y+20+"px";
    }
    //hide
    function hideDiv()
    {
     var oDiv=document.getElementById("context");
     oDiv.style.visibility="hidden";
    }function delayHide(event)
    {
      setTimeout("hideDiv()",1000);
    }function delayShow(event)
    {
      setTimeout("showDiv(event,this)",1000);
    }
    </script>
      

  3.   

    ===================================
        while(e=e.offsetParent){
        t+=e.offsetTop;
        l+=e.offsetLeft;
        }
    ===================================
    不好意思,笔误不过好像div的显示位置不太对啊,e.offsetTop这个找不到对象。
      

  4.   

    本人是新手,谢谢大家,改正的代码如下:
    <div id="context" style="position:absolute;visibility:hidden">
    This is some context shall show after 1 second.
    </div>
    <br>
    <br>
    <div id="tap">
     <a href="#"  id="link" onmouseover="delayShow()" onmouseout="delayHide()">Mouse Over Here</a> 
    </div>
    <script language=javascript>
    //show 
    function showDiv(event)
    {
        var e = document.getElementById("link");
        var y=e.offsetTop;
        var x=e.offsetLeft;
        
        while(e=e.offsetParent){
        x+=e.offsetTop;
        y+=e.offsetLeft;
        }    var oDiv=document.getElementById("context");
        oDiv.style.visibility="visible";
        oDiv.style.backgroundColor="yellow";
        oDiv.style.border="solid black 1px";
        oDiv.style.left=x+20;
        oDiv.style.top=y+20;
    }
    //hide
    function hideDiv()
    {
     var oDiv=document.getElementById("context");
     oDiv.style.visibility="hidden";
    }function delayHide(event)
    {
      setTimeout("hideDiv()",1000);
    }function delayShow(event)
    {
      setTimeout("showDiv(this)",1000);
      
    }
    </script>