Javascript / HTML:elementFromPoint只返回HTMLBodyElement

时间:2011-12-01 06:00:25

标签: javascript html

我想在覆盖所有内容的div下方的元素上触发click事件。

<div id='container'><div> 
  <div id='123'>
     <a href=''>Example link to activate</a>
  </div>

所以我已经编写了以下函数,但是这只会返回&#34; [object HTMLBodyElement]&#34;在功能中。任何想法为什么elementFromPoint没有识别链接元素?

          function onDocumentClick( event ) {

              container.style.visibility = 'hidden';
              var ele = document.elementFromPoint(event.x, event.y);
              container.style.visibility = 'visible';
              alert(ele);
              document.removeEventListener('click', onDocumentClick, true);
              var e = document.createEvent('MouseEvents');
              e.initEvent( 'click', true, true );                 
              document.addEventListener('click', onDocumentClick, true)
          }

1 个答案:

答案 0 :(得分:0)

当您致电elementFromPoint()时,#container元素及其所有孩子都被隐藏了。 elementFromPoint()只能看到可见的节点。

另请注意,x对象的yEvent属性在浏览器中没有得到很好的支持。更好地使用clientX / clientY