我知道如果我有一个元素触发一个事件,它会传播到根,然后返回到原始元素。基本上,所有的祖先都会收到通知。但我想通知所有后代。我能这样做吗?
谢谢,里克
答案 0 :(得分:1)
这是可能的,我的代码可能有一些错误,但这里是:
elem = document.querySelectorAll('#my-element')[0];
function callClickOnDescendants(element, event){
for (var i = 0, len = element.children.length; i < len; i++){
element.children[i].onclick.call(element.children[i], event);
callClickOnDescendants(element.children[i], event);
}
}
elem.onclick = function(event){
callClickOnDescendants(elem, event);
}
如果你在downvoting之前等待,我将能够在jsfiddle中进行测试。 的修改 它有效,jsfiddle proof