假设事件监听器的处理程序可以多次添加,如下所示:
firstPar.addEventListener("click", myFirstEventHandler, false);
firstPar.addEventListener("click", mySecondEventHandler, false);
etc...
那么,我如何组合代码以便通过缩短来使用:
function allHandler(){
myFirstEventHandler();
mySecondEventHandler();
}
,或者
function allHandler(){
return function(){
myFirstEventHandler();
mySecondEventHandler();
}
}
这样我就可以使用:
firstPar.addEventListener("click",allHandler,false);
或者,另一种方式?
答案 0 :(得分:0)
第一种方式很好,但我会把事件包括在内:
function myFirstEventHnadler (event) {
event.stopPropagation(); // To answer your question in the comments.
}
function mySecondEventHandler (event) {
}
function allHandler(event){
myFirstEventHandler(event);
mySecondEventHandler(event);
}
答案 1 :(得分:0)
这可能会引入范围复杂性,但为什么不使用匿名函数。
firstPar.addEventListener("click", function(){
myFirstEventHandler();
mySecondEventHandler();
}, false);