xzj127 2008-11-24 10:13
浏览 223
已采纳

在table 中的标签为什么无法获得标签的位置

大家好 RT

 

 

    如果我把一个文本框放在Table中,当文本框获得光标时,我要获得这个文本框在document 中的位置

 

     timeID 是这个文本框的ID;

    var y=timeID.offsetTop;
    var x=timeID.offsetLeft+timeID.offsetWidth;

 

为什么我这么写 获得的是 0 或者是1 但是在 Table外的标签 都能准确的获得。。

 

不知道这是什么情况。。。请大侠们请教~~~!!!!

  • 写回答

3条回答 默认 最新

  • iteye_14540 2008-11-24 11:37
    关注

    函数:
    [code="js"]
    function getXY(elementId){
    var e = document.getElementById(elementId);
    var x = e.offsetLeft, y = e.offsetTop;

    while(e=e.offsetParent){
    x += e.offsetLeft;

    y += e.offsetTop;
    }
    var msg = "X:" + x + "\tY:" + y;
    alert(msg);
    }
    [/code]

    用例:
    [code="html"]
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



    无标题文档 function getXY(elementId){ var e = document.getElementById(elementId); var x = e.offsetLeft, y = e.offsetTop; while(e=e.offsetParent){ x += e.offsetLeft; y += e.offsetTop; } var msg = "X:" + x + "\tY:" + y; alert(msg); }


    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器