Javascript 捕获父元素上的事件

Javascript 捕获父元素上的事件,javascript,event-bubbling,Javascript,Event Bubbling,单击时,window.event报告树中最低的元素。e、 g <a href="http://server.com/page.aspx" id="anchor"> <span id="span" class="Someclass"> <strong id="strong">Submit</strong> </span> </a> 当您单击上面的链接时,如果在主体级别有onclick listner,windo

单击时,window.event报告树中最低的元素。e、 g

<a href="http://server.com/page.aspx" id="anchor">
<span id="span" class="Someclass">
    <strong id="strong">Submit</strong> 
</span> </a>

当您单击上面的链接时,如果在主体级别有onclick listner,window.event将报告单击了“strong”元素。在同一事件中,我如何知道父项实际上是一个“锚定”标记,它指向某个地方?i、 我正在寻找一种自动的方法,让我知道主要元素是“锚”而不是“强”元素。 我显然无法执行window.event.target.parentNode.parentNode,因为这将是手动检查。可能在某个地方我可以跟踪点击事件的“冒泡”


任何人有任何线索吗?

您可以自动检查祖先

var element = foo;
while (foo !== document.body) {
    if (foo === someCondition) {
      return foo;
    }
    foo = foo.parentNode;
}
return false;

大多数库都有一个内置的方法来实现这一点。e、 yui3有,jQuery有。

元素是被点击的元素。锚只是偶然出现在事件的冒泡链中,它没有什么特别之处。它只是从你的角度来看的,而不是从浏览器的角度来看的。@Tomalak,我明白你的意思。从技术上讲,这里的锚没有什么特别之处。不过,我确实喜欢大卫的回答……我只是没有想到这一点,因为我当时太过沉迷于泡泡事件了。:)谢谢你的输入!嗯……谢谢……我不能使用YUI/jQuery,因为我的脚本是独立的,所以我想保持非常小的规模。我来看看。