模块从其他模块调用函数,用于在元素上注册和取消注册事件。我将eventType作为参数传递。但是收到错误Uncaught TypeError: elementObject.element.EventOption is not a function
elementObject = { element: document.getElementById("elemId"),... }
eventRegisterer(elementObject, addEventListener)
事件登记功能:
function eventRegisterer(elementObject, EventOption){
elementObject.element.EventOption('change', changeFunction)
}
function changeFunction() {
....
}
为什么存储addEventListener
作为参数不起作用?
答案 0 :(得分:0)
找到解决方案:
function eventRegisterer(elementObject, EventOption){
elementObject.element[EventOption('change', changeFunction)];
}
使用类似数组的表示法而不是直接使用属性名称确实有效。