Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2014, 15:49   #1
ogamilait
Пользователь
 
Регистрация: 09.11.2013
Сообщений: 60
По умолчанию Отправка Ajax запроса после навидения и удержание курсора N время

При навидении на ссылку отправляем Ajax запрос, как сделать так что б запрос не сразу отправлялся, а через N время и если курсор мы не убрали с ссылки. Аналог к Vk когда на like наводим курсор.

Я сделал так. на событие при навидении, но это прсто задержка перед отправкой.
Код:
<div onmouseover="likePostUsers(id)"
Код:
    function likePostUsers(id){
        setTimeout(function () {
            $.ajax({
                url: 'LikePostUsers',
                type: 'POST',
                data: {id: id},
                cache: false,
                success: function (data){
                    if(data.like == null){
                        $('#like-post-user_'+id).html(data);
                        $('#like-post-user_'+id).addClass('like-post-user');
                    }
                    else
                    {
                        $('#like-post-user_'+id).removeClass('like-post-user').empty();
                    }
                }
            });
        }, 1000);
    }
Я смотрел в сторону beforeSend ajaxOptions. Нужна помощь как решить ету задачу.
ogamilait вне форума Ответить с цитированием
Старый 10.12.2014, 16:56   #2
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Проверяйте вышла ли мышка из области и ставьте флаг, проверяйте его перед оптправкой.
Код:
function () {
            if(mouseout==false)
                $.ajax(
Далее однако вам придётся именовать события, а не использовать один флаг, тк человек может водить по границе объекта туда сюда.
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 10.12.2014, 18:00   #3
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

Лучше не выставлять флаг, а отменять запланированное действие средствами clearTimeout.
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Старый 10.12.2014, 18:34   #4
ogamilait
Пользователь
 
Регистрация: 09.11.2013
Сообщений: 60
По умолчанию

Цитата:
Сообщение от Fenex Посмотреть сообщение
Лучше не выставлять флаг, а отменять запланированное действие средствами clearTimeout.
mv28jam, Fenex, спасибо, все работает. Fenex как рас то что нужно. И заодно вышел фикс бага отправки несколько запросов когда водиш по ссылке.

Последний раз редактировалось ogamilait; 10.12.2014 в 18:36.
ogamilait вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 post запроса подряд | AJAX ddwnik JavaScript, Ajax 4 21.11.2014 10:22
Получение данных с сервера после Ajax запроса Lokos JavaScript, Ajax 1 28.02.2014 08:11
Язык запроса AJAX ( помогите решить ) Valeris Общие вопросы C/C++ 1 19.10.2013 14:12
Отправка данных формы AJAX`ом? Jopses JavaScript, Ajax 4 19.02.2013 15:16
Загрузка отдельного элемента после отправки AJAX запроса spein JavaScript, Ajax 2 02.01.2010 22:07