我正在尝试为一个元素构造一个包装器,并且我想为我的包装器创建一个无缝集成。为了实现这一点,我希望将所有事件从一个元素传播到另一个元素,以创建一个镜像来说明这一点。
假设我有#element-1和#element-2。我给#element-1一个'click‘处理程序。所需的行为是,无论是在#element-1上还是在#element-2上,只要发生单击,处理程序都应该触发。此外,如果#element-2被分配了一个不同的'click‘处理程序,两个处理程序都应该触发。
不要担心无限冒泡,我会找到一种机制来应对它。我的问题是,我如何才能在不编写所有事件名称的情况下,为这两个元素的所有可能事件实现事件镜像(我也希望获得自定义事件,所以不能对事件名称进行硬编码)?
我对可能不使用jQuery的解决方案持开放态度,只要它实现了我所描述的。
发布于 2015-12-23 19:41:41
假设div ids中有10个锚元素#event-1,#event-2,... #event-10。您可以编写事件处理程序,如下所示。
for(i=0;i<=10;i++) {
if ($(".event-"+i).find('a').length > 0) {
var g = $(".event-"+i).find('a');
g.click(function(){
/* Your code */
});
}
}https://stackoverflow.com/questions/16952784
复制相似问题