原型 - 事件 findElement() 方法



此方法返回第一个具有给定标签名的 DOM 元素,该标签向上位于发生事件的元素上。

有时,你并不关心实际被事件点击的元素。有时你对它的“最近元素”更感兴趣。这就是 findElement 的用途。

所提供的标签名称将以不区分大小写的方式进行比较。

语法

Event.findElement(event, tagName);

返回值

返回第一个具有给定标签名的 DOM 元素。如果没有找到匹配元素,则返回文档本身(HTMLDocument 节点)。

示例

以下是一个简单的代码,它允许你单击页面上的任意位置并隐藏围绕你点击位置最贴近的段落(如果有)。

<html>
   <head>
      <title>Prototype examples</title>
      <script type = "text/javascript" src = "/javascript/prototype.js"></script>
      
      <script>
         // Register event 'click' and associated call back.
         Event.observe(document, 'click', respondToClick);
  
         // Callback function to handle the event.
         function respondToClick(event) {
            var element = Event.findElement(event, 'P');
            alert("Hiding Tag : " + element.tagName );
            
            if ( element != document ) {
               element.hide();
            }
         }
      </script>
   </head>

   <body>
      <p id = "note"> Click anywhere to see the result.</p>
      <p id = "para1">This is paragraph 1</p>
      <br />
      <br />
      
      <p id = "para2">This is paragraph 2</p>
      <div id = "division">This is divsion.</div>
   </body>
</html>

输出

prototype_event_handling.htm
广告