Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.03.2014, 19:23
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

Прервать хэндлер потери фокуса
Можно ли как-то при потере фокуса полем input остановить выполнение хэндлера для onblur, если курсор находится над определенным элементом?
Пришлось велосипедить свой date picker. Вызываю его по onfocus на поле, скрываю, соответственно по onblur. Но если onblur происходит во время клика по кнопке переключения месяца, необходимо прервать исщезновение управляющего блока.
Вот упрощенный код:
<input id="date" type="text" placeholder="ткни в меня">
<div id="div">
    <a id="button" href="">кнопка</a>
</div>
<script>
$('#date').on('focus', function() {
    $('#div').show();
}).on('blur', function() {
    $('#div').hide();
});
$('#button').on('click', function() {
    $('#date').val('ta-dam');
    return false;
})
</script>

Вот песочница: http://jsfiddle.net/PbpkY/

Посоветуйте, пожалуйста, что-нибудь хорошее.
Ответить с цитированием
  #2 (permalink)  
Старый 18.03.2014, 19:48
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А ты чтобы фокус не терялся отменяй событие mousedown по календарику.
Вобще, например в хроме, в нативной реализации фокус может ходить по кнопкам календаря, но фокус поля при этом не сбрасывается. В кастомной реализации такого не добъешься. Но ведь фокус в календаре не сильно то и нужен.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 18.03.2014, 19:53
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

danik.js,
отлично! то, чего не хватало, спасибо!
$('#div').on('mousedown', function() {
    return false;
})


p.s.
Плюсануть пока не имею возможности, сорри
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрытие блока после потери фокуса Nubi jQuery 2 06.02.2009 22:58