Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Всплывающее окно если покинуть сайт (https://javascript.ru/forum/jquery/67363-vsplyvayushhee-okno-esli-pokinut-sajjt.html)

RapCore 13.02.2017 12:27

Всплывающее окно если покинуть сайт
 
Знаю что эту штуку люди не любят, но клиент хочет и всё.
Нужно показать модальное окно если пользователь тянется к вкладкам браузера. Проблема в том что нужно что бы это окно показывалось один раз за посещение сайта.
сделал это простым кодом но беда в том что если отвести курсор на полосу прокрутки или вниз на панель задач то скрипт не срабатывает.
как починить можно?
$(document).one( "mouseleave", function(e) {
  if (e.clientY < 0) {
        
       $('#stop').modal();
    } 
});

RapCore 13.02.2017 13:20

или подскажите как по-другому реализовать такую бредятину

рони 13.02.2017 13:32

RapCore,
$(function() {
$(document).on( "mouseleave", function(e) {
  $(document).off("mouseleave");
  alert("stop")
});
});

RapCore 13.02.2017 13:45

рони,
спасибо, но этот вариант вызывает окно при любом покидание области сайта(вниз, вбок, вверх).
в моем случае нужно только чтобы при движение курсора вверх браузера

ksa 13.02.2017 13:58

Цитата:

Сообщение от RapCore
в моем случае нужно только чтобы при движение курсора вверх браузера

Смотри мышиные координаты... ;)

ksa 13.02.2017 14:00

Цитата:

Сообщение от RapCore
Знаю что эту штуку люди не любят, но клиент хочет и всё.

Скажи им, что они перебарщивают. :-E

рони 13.02.2017 14:28

RapCore,

$(function() {
    function b(a) {
        "mousemove" == a.type && (c = +a.clientY);
        50 > c && "mouseleave" == a.type && ($(document).off("mouseleave mousemove", b), alert("stop"))
    }
    var c = 100;
    $(document).on("mouseleave mousemove", b)
});

RapCore 13.02.2017 14:44

рони,
благодарю. то что нужно


Часовой пояс GMT +3, время: 07:01.