@GaserV

Почему undefined?

Почему undefined?

<div class="header-contacts__text" onclick="showPopup()">
	заказать обратный звонок
</div>


$(document).ready(function(){
	
	function showPopup() {

		alert("asd");

	}


})


Uncaught ReferenceError: showPopup is not defined
  • Вопрос задан
  • 154 просмотра
Решения вопроса 2
IonDen
@IonDen
JavaScript developer. IonDen.com
Это значит что функция showPopup отсутствует в глобальной области видимости. Может она у вас обернута в document ready?

Чтобы вытащить её наружу вы можете сделать например так:
// вместо этого:
function showPopup () {
    ...
}

// написать так:
window.showPopup = function () {
    ...
};


------------

А еще лучше, в вашем случае, вынести навешивание события в JS, как и положено. Вот так например:

<div class="header-contacts__text js-call">
    заказать обратный звонок
</div>


$(document).ready(function(){

    function showPopup() {
        alert("asd");
    }

    $(document).on('click', '.js-call', showPopup);

});
Ответ написан
Комментировать
В вашем случае просто не нужно функцию showPopup заключать в $(document).ready
Ваш код будет просто таким:
function showPopup() {
  alert(123)
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы