Ссылка динамической функции AddEventListener на анонимную функцию - PullRequest
0 голосов
/ 10 января 2012

Итак, у меня есть функция, и я хочу иметь возможность создавать и удалять функцию со ссылкой на анонимную функцию. Я хочу сделать это, чтобы обеспечить возможность создавать одну и ту же функцию для нескольких объектов. В настоящее время, когда я создаю одну функцию, а затем создаю другую, я полагаю, что она перезаписывает ссылку самой новой, и это не позволяет мне удалить более старую ссылку.

Итак, я хочу динамически создать ссылку с переменной с чем-то вроде этого.

image.addEventListener("click", 
    (Highlight + image.alt) = function (){ HighLightClick(this) }, false);

и затем удалите его вот так

TileClicked.removeEventListener("click", (Highlight + TileClicked.alt), false);

Нужно ли создавать переменную для TileClicked или как это сделать?

1 Ответ

0 голосов
/ 10 января 2012

Может быть что-то вроде:

var functionMap = {};

funtionMap[Highlight + image.alt] = function (){ HighLightClick(this) };
image.addEventListener("click", funtionMap[Highlight + image.alt], false);

TileClicked.removeEventListener("click", funcionMap[Highlight + TileClicked.alt], false);
...