Задать вопрос
Ответы пользователя по тегу JavaScript
  • Почему не работает условие в javascript?

    V_A_B
    @V_A_B
    ¯\_(ツ)_/¯
    В чём может быть проблема?


    в том, что Вы выполняете проверку(получаете куку) один раз после(в момент) загрузки страницы, а Вам надо при событиях.(при первой загрузки там будет пусто - undefined, согласно Вашему коду - самая первая строка)

    Но проблема в том, что модальное окно показывается постоянно при попытке закрыть страницу. При этом сами куки устанавливаются.


    а если страницу перезагрузить после установки куки?

    з.ы

    ...
    var alertwin = getCookie("alertwin");//при отсутствии куки тут пусто.
    //значение легло при загрузке страницы
    //значит после установки куки надо перезагрузить страницу, чтоб там что-то было
    //либо сделать повторный запрос getCookie(name)
    if (alertwin != "no") { 
        $(document).mouseleave(function(e){
            if (e.clientY < 0) {
    ...
    _________________________________________________________________________
    ...
    $(document).mouseleave(function(e){
    	var alertwin = getCookie("alertwin");//получаем куку при каждом событии mouseleave
    //при первом событии там пусто и код ниже отработает
    //при повторном наведении там не пусто и код ниже не отработает
    	if (alertwin != "no") {
    ...

    Ответ написан