2017-02-16 37 views
-1

考虑在坐标为(2,2)的空白浏览器页面上有一个DIV(以像素为单位)和一个按钮。如果我点击该按钮,它必须发送坐标(2,2)函数,它将检测(2,2)它是DIV,BUTTON等,并返回它的ID。如何通过javascript获取元素在特定坐标处的ID

这里是我的尝试:

<!DOCTYPE html> 
<html lang="en"> 

<head> 
    <title>elementFromPoint example</title> 
    <script> 
     function changeColor(newColor) { 
      //To get element from coordinate 2,2 
      var elem = document.elementFromPoint(2, 2); 
      //Here i wanted to print what i am getting in var elem 
      document.getElementById("status").innerHTML = elem; 
      //next line changes color whatever is at 2,2 
      elem.style.color = newColor; 
      //But i want to know whats at 2,2 or get its ID or class. 
     } 
    </script> 
</head> 

<body> 
    <p id="para1">Some text here</p> <button onclick="changeColor('blue');">blue</button> <span id="status"></span> </body> 

</html> 

但用这种方法我只能改变其颜色,但我坚持我如何能得到它的ID或TYPE(DIV /按键/对/等等)。

+2

这听起来像你正在寻找['event.target'](http://stackoverflow.com/a/5181830/2341603)。 –

+1

???您可以在代码中阅读'elem'所需的所有属性。 – Teemu

+0

元素被打印为[对象HTMLHtmlElement] –

回答

2

var elem = document.elementFromPoint(2, 2);给你的元素参考,并id是元素

的属性尝试

console.log(elem.id); 

类型

console.log(elem.tagName); 

要更新您的状态是这样的:

document.getElementById("status").innerHTML = 'ID:' +elem.id +' , Tag:' +elem.tagName; 
+0

我太快地阅读了这个问题 - 你是对的。我删除了我的非答案:) –

+0

谢谢问题解决了 –

相关问题