фокусировка не срабатывает при нажатии на другой селектор одним щелчком - PullRequest
1 голос
/ 18 апреля 2010

У меня есть 2 элемента div, к каждому из которых привязаны клики. при нажатии на элемент div отображается форма (в другом элементе div), позволяющая установить свойства, специфичные для элемента div, по которому щелкают.

Я использую focusout для сохранения свойств в объекте данных. все работает отлично, за исключением случаев, когда я нажимаю на другой div. кажется, что обработчик щелчка на другом div отменяет фокусировку поля формы.

Кто-нибудь еще испытывал это? Так каков правильный способ преодолеть это?

1 Ответ

1 голос
/ 18 апреля 2010

Вы должны попробовать связать оба события в одной функции, например:

$('div').bind('focusout click', function(e){
  if (e.type=='click'){
    //what's inside your .click(function(){ ... })
  }
  else {
    //as long as this's triggered only on click and focusout the following lines will be executed on focusout only
  }
});

никогда не пробовал раньше, должен предотвратить отмену, если по этой причине он не работает

...