<html><head><title>层与按钮对齐</title></head><body>
<div align=left><table border=1>
<tr><td align=center height=50 width=200>
    <input type=button value=ok onmouseover="cc(this)" onmouseout="document.all.pop.style.display='none'"></td>
    <td align=center height=50 width=200>
    <input type=button value=ok onmouseover="cc(this)" onmouseout="document.all.pop.style.display='none'"></td>
    <td align=center height=50 width=200>
    <input type=button value=ok onmouseover="cc(this)" onmouseout="document.all.pop.style.display='none'"></td></tr>
</table><div><div id=pop style="position:absolute;width:100;height:50;z-index:99;display:none">
<table border=0 bgcolor=#FF0000><tr><td align=center>图层文字</td></tr></table></div><script language=javascript>
function cc(tt)
{
  var daps  = document.all.pop.style;
  var ttop  = tt.offsetTop;     //TT控件的定位点高
  var thei  = tt.clientHeight;  //TT控件本身的高
  var tleft = tt.offsetLeft;    //TT控件的定位点宽
  var ttyp  = tt.type;          //TT控件的类型
  while (tt = tt.offsetParent){ttop+=tt.offsetTop; tleft+=tt.offsetLeft;}
  daps.top  = (ttyp=="image")? ttop+thei : ttop+thei+6; //层的 Y 坐标
  daps.left = tleft + 1;  //层的 X 坐标
  daps.display = "";  //层显示
}
</script>
</body></html>

解决方案 »

  1.   

    <script language="JavaScript">
      function tdPosition(e,j){var tdTop = tdOffsetTop(e);var tdLeft = tdOffsetLeft(e);var tdHeight = e.offsetHeight;var tdWidth = e.offsetWidth;j.style.display='';j.style.width=tdWidth+2;j.style.top=tdTop+tdHeight;j.style.left=tdLeft-1;}
    function tdOffsetLeft(e){var t = e.offsetLeft;while(e = e.offsetParent)t += e.offsetLeft;return (t);}
    function tdOffsetTop(e){var t = e.offsetTop;while(e = e.offsetParent)t += e.offsetTop;return (t);}
     </script>e是当前点击的容器,j是被打开的容器