У меня есть функция, которая прослушивает щелчок по экрану и запускает обратный вызов.Он является частью объекта Helper (поэтому в моем примере кода ему предшествует термин Helper. Это не имеет значения.
var Helper = {
bodyClickListener: function(fn) {
var window = document.getElementsByTagName('body')[0];
window.click();
CORE.dom.on(window, 'click', function(event) {
CORE.dom.off(window, 'click');
fn(event);
});
}
}
Мне нужно передать функцию в эту функцию с помощьюпараметр, который был ранее установлен.
function someFunction() {
var popup = document.getElementById('tagResultsPopup');
Helper.bodyClickListener(function(popup) {
return function(event) {
event.stopPropagation();
removePopup(popup);
};
}(document.getElementById('tagResultsPopup')));
function removePopup(element) {
if(element) {
element.parentNode.removeChild(element);
}
};
}
Приведенный выше код работает, но вы заметите, что мне нужно установить переменную popup внутри функции обратного вызова. Она уже была установлена выше.передать ссылку на предыдущую переменную в функцию обратного вызова.