Событие будет передано вашей функции автоматически - просто сделайте его первым аргументом функции, которую вы передаете addEventListener
.Кроме того, false является значением по умолчанию для параметра захвата.
(function() {
var i = month;
shape.addEventListener("mouseover", function(e) { popup_on(e, foo, i); });
})();
Кроме того, вы согласны с закрытием foo
в обратном вызове вашего события?Если нет, то вы можете сделать то же самое с ним
(function() {
var i = month;
var f = foo;
shape.addEventListener("mouseover", function(e) { popup_on(e, f, i); });
})();
И если все эти локальные переменные становятся раздражающими, вы можете сделать их параметрами, чтобы сделать вещи немного более аккуратными
(function(i, f) {
shape.addEventListener("mouseover", function(e) { popup_on(e, f, i); });
})(month, foo);