Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.05.2016, 14:28
Интересующийся
Отправить личное сообщение для freelancerphpcss Посмотреть профиль Найти все сообщения от freelancerphpcss
 
Регистрация: 02.07.2013
Сообщений: 19

Срабатывание события при условии
Здравствуйте есть такой код
$('.recommend-list').on('mouseenter', 'li', function(e) {
                    var index = $(this).attr('data-marker'),
                        marker = myCollection.get(index);

                    myMap.hint.close(true);
                });


Смысл в том что если навели на элемент курсор, то закрывается hint у карты. Проблема в том что пользователь может случайно навести курсор на другой элемент(когда передвигается в другое место сайта). Я хочу сделать чтобы событие mouseenter срабатывала только в том случае если курсор находится на элементе в течении 0.4 секунды. Как это сделать?

Последний раз редактировалось freelancerphpcss, 13.05.2016 в 14:32.
Ответить с цитированием
  #2 (permalink)  
Старый 13.05.2016, 16:49
Интересующийся
Отправить личное сообщение для freelancerphpcss Посмотреть профиль Найти все сообщения от freelancerphpcss
 
Регистрация: 02.07.2013
Сообщений: 19

такое вообще реально сделать?
Ответить с цитированием
  #3 (permalink)  
Старый 13.05.2016, 17:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 30,104

freelancerphpcss,setTimeout
по 'mouseenter' обнулите и установите таймер, по mouseleave только обнулите
Ответить с цитированием
  #4 (permalink)  
Старый 13.05.2016, 17:35
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 30,104

freelancerphpcss,
var timer, pause = 400;
    $(".recommend-list").on("mouseenter mouseleave", "li", function(e) {
        window.clearTimeout(timer);
        if (e.type == "mouseenter") {
            var index = $(this).attr("data-marker"),
                marker = myCollection.get(index);
            timer = window.setTimeout(function() {
                myMap.hint.close(true)
            }, pause)
        }
    })
Ответить с цитированием
  #5 (permalink)  
Старый 13.05.2016, 20:19
Интересующийся
Отправить личное сообщение для freelancerphpcss Посмотреть профиль Найти все сообщения от freelancerphpcss
 
Регистрация: 02.07.2013
Сообщений: 19

спасибо большое
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прокрутка в исходное положение при некотором условии Mikle1990 Элементы интерфейса 1 04.05.2016 10:43
вызов события change при изменении value FeelUs Events/DOM/Window 4 19.02.2016 09:51
События при scroll (Помогите как упростить) teremok jQuery 2 29.04.2013 11:59
запретить срабатывание события дочернего элемента, при перемещении родительского Danil jQuery 4 09.10.2011 09:53
Срабатывание ссылок при наведении. progressive jQuery 0 21.12.2010 14:40