如何在用户文本选择旁边找到元素的顶部位置?

时间:2011-11-18 20:29:00

标签: javascript google-chrome google-chrome-extension

来自这个主题: How can I position an element next to user text selection?

我可以从以下位置获得左侧位置:

 var obj = arrow_btn;
            var left = top = 0;
            do {
                left += obj.offsetLeft;
                top += obj.offsetTop;
            } while (obj = obj.offsetParent);

            console.log("left="+left);
            console.log("top=" + top);

但我进入控制台: 左= 590 top = [object DOMWindow]

关于为什么我无法获得Top的任何评论?

1 个答案:

答案 0 :(得分:1)

是的,“top”是全局对象“window”的不可变属性,它引用顶部框架(DOMWindow)。您的代码相当于:

var left;
window.top = 0; // no effect
left = window.top;
....

要纠正它,只需确保top是var;

var left = 0,
    top = 0;