Показать сообщение отдельно
  #1 (permalink)  
Старый 05.07.2015, 01:16
Интересующийся
Отправить личное сообщение для lucky89 Посмотреть профиль Найти все сообщения от lucky89
 
Регистрация: 27.10.2014
Сообщений: 16

Не могу убрать фокус с input
Здравствуйте!
Вопрос я даже точно не знаю, как сформулировать, по этому попробую как-нибудь, а потом покажу, чтобы в живую увидели.
Внутри div есть input, по верх которого div такого же размера, для блокировки input'а. При двойном клике на это блокирующем блоке, он скрывается .hide() и в input под ним ставится фокус .focus(), на этом инпате висят события focusout и chenge (точнее не на них самих а на родителе на 2 уровня выше, через делегирование). В документации сказано, что chenge срабатывает если были изменения ПРИ ПОТЕРЕ ФОКУСА, но помимо этого у меня оно почему-то срабатывает, когда были изменения и нажат Enter. Меня это даже обрадовало так как удобно, но после такого срабатывания chenge с инпата не пропадает фокус, то есть вы отредактировали, нажали ентер, данные в БД обновились, блокирующий див сверху инпата появился, но фокус все еще в инпате, видно коретку ввода и можно дальше править не убирая блокирующий див, что нехорошо. Как это получилось и как с этим бороться я не понимаю. Думал фокусироваться на элементе, которого в данный момент не видно на странице, чтоб с этого интпата убрать фокус, но не получается.
---
Посмотреть можно на сайте http://evacrm.ru/login.html
войдите используя емеил/пароди demo (без 123). Вверху настройки (символ три полоски), там товары, и двойной клик в описание семейства, изменить, нажать ентер.
Код скрипта и остального в консоли можно посмотреть (файл biz.js).
Очень надеюсь, что хоть кто-то понял о чем я спрашиваю
Помогите, чем сможете)
Ответить с цитированием