【问题标题】:How to get coordinates of a button in a browser?如何在浏览器中获取按钮的坐标?
【发布时间】:2017-04-01 21:55:12
【问题描述】:

我正在寻找一种获取坐标的方法,例如浏览器中的一个按钮。 提前致谢。

【问题讨论】:

标签: javascript browser


【解决方案1】:

要在浏览器中获取按钮的坐标,您需要先编写一个选择器来获取您有兴趣为其查找坐标的特定按钮。

var button = document.querySelector('button')

要获取坐标,这取决于您是否希望坐标参考其他元素。如果坐标是相对于自身的,那么它就像

{left: 0, top: 0, bottom:  button.offsetHeight, right: button.offsetWidth}

如果你想让它引用一个不同的元素,比如窗口,你可以递归地遍历按钮的父元素,直到到达窗口

var top = button.offsetTop;
var left = button.offsetLeft;
var height = button.offsetHeight;
var width = button.offsetWidth;
while(button.offsetParent && button.offsetParent != window){
    button = button.offsetParent;
    top += button.offsetTop;
    left += button.offsetLeft;
}
var bottom = top + height;
var right = left + width;
return {left: left, top: top, bottom: bottom, right: right}

【讨论】:

    【解决方案2】:

    您需要使用如下代码来获取按钮的坐标。

    <input type="button" id="button" value="display" onclick="getCoords()">
    <script>
        function getCoords() {
            var mainEvent = event ? event : window.event;
    
            alert("This button click occurred at: X(" + mainEvent.screenX + ") 
                and Y(" + mainEvent.screenY +       ")");
        }
    </script>
    

    这是工作示例:http://jsfiddle.net/Bnuy7/1692/

    【讨论】:

      猜你喜欢
      • 2010-10-24
      • 1970-01-01
      • 2011-11-19
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      相关资源
      最近更新 更多