在构建类似jQuery的库作为学习项目的同时, 我被handling events困住了。我无法弄清楚为什么不会 以下代码将相同的回调添加到两个不同的事件:
var eventListener = (function() {
'use strict';
return {
on : function(element, event, callback) {
element.addEventListener(event, function() {
callback();
},
false);
}
};
})();
这是testing code(使用Jasmine)检查的部分 帖子标题中指定的功能:
it('should be able to add the same callback for two different events
to an HTML element'), function() {
eventListener.on(selectedElement, 'click', methods.showLove);
eventListener.on(selectedElement, 'hover', methods.showLove);
$selectedElement.trigger('click');
$selectedElement.trigger('hover');
expect(methods.showLove.calls.count()).toEqual(2);
});
我无法弄清楚错误在哪里。