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

Javascript 如何在用户文本选择旁边找到元素的顶部位置?,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,从这个主题: 我可以从以下位置获取左侧位置: var obj = arrow_btn; var left = top = 0; do { left += obj.offsetLeft; top += obj.offsetTop; } while (obj = obj.offsetParent); console.log("left=

从这个主题:

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

 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=[对象窗口]

关于为什么无法获取顶部的任何注释?

是,“顶部”是全局对象“窗口”的一个不可变属性,该对象指向顶部框架(DOMWindow)。您的代码相当于:

var left;
window.top = 0; // no effect
left = window.top;
....
要更正它,只需确保top是一个var

var left = 0,
    top = 0;