Как сохранить результат работы функции в переменную
Сижу не один час за изучением js туплю на ровных вопросах, уж простите(((Есть функция, она после проверок отрисовывает попап, и мне нужно в этой же функции после отрисовки попапа, сохранить отрисованный попап в переменную, и на эту переменную повесить обработчик закрытия попапа.Вот функция
`var onMapPinsBlockMousedown = function (e) {
if (e.button !== 0) {
return;
}
removeCardElement();
var targetPin;
if (e.target.classList.contains('map__pin') && !e.target.classList.contains('map__pin--main')) {
targetPin = e.target;
// ;
} else if (e.target.tagName === 'IMG' && e.target.parentElement.classList.contains('map__pin') && !e.target.parentElement.classList.contains('map__pin--main')){
targetPin = e.target.parentElement;
}
if (targetPin) {
var index = pinsElements.indexOf(targetPin);
if (index !== -1 && index < adds.length) {
renderCard(renderOfferCard(adds[index]));
}
}
};`
Ответы (2 шт):
Автор решения: Евгений Иванов
→ Ссылка
Как пример вариант. Сегодня просто делал пример с выводом значений ))
$('[name="button"]').on('click', function() {
$('#rezult').html(example);
});
var example = function functionName(e) {
return '<label>Благодарим за отправку '+$('[name="fname"]').val()+' '+$('[name="lname"]').val()+' мы с вами свяжемся!</label>';
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
<input type="text" name="fname" value="Иван">
</div>
<div>
<input type="text" name="lname" value="Иванов">
</div>
<button type="button" name="button">Отправить</button>
<div id="rezult"></div>
Автор решения: Дарья Баранова
→ Ссылка
Внутри функции нашла с помощью querySelector этот попап,( return в данной фукции не срабатывает)и повесила на него обработчик, и обработчик на документ, для закрытия по клавиши esc
var onMapPinsBlockMousedown = function (e) {
if (e.button !== 0) {
return;
}
removeCardElement();
var targetPin;
if (e.target.classList.contains('map__pin') && !e.target.classList.contains('map__pin--main')) {
targetPin = e.target;
// ;
} else if (e.target.tagName === 'IMG' && e.target.parentElement.classList.contains('map__pin') && !e.target.parentElement.classList.contains('map__pin--main')){
targetPin = e.target.parentElement;
}
if (targetPin) {
var index = pinsElements.indexOf(targetPin);
if (index !== -1 && index < adds.length) {
renderCard(renderOfferCard(adds[index]));
}
}
var cardOnMap = document.querySelector('.map__card');
document.addEventListener('keydown', onPinEscPress);
cardOnMap.addEventListener('mousedown', onPinCloseCard);
};