Предотвратить потерю фокуса над текстовым полем во всплывающем окне, когда onmouseover запущен на другом div (extjs) - PullRequest
2 голосов
/ 17 января 2012

Я не знаю, является ли это общей проблемой браузера или это связано с моим кодом, но вот моя проблема:

Допустим, моя страница содержит ссылку и меню. Я нажимаю на ссылку, и открывается всплывающее окно [оно содержит текстовое поле или поле даты]. Когда всплывающее окно загружено, текстовое поле получает фокус, а в текстовом поле появляется курсор: я могу писать. Теперь, если я наведу курсор в сторону, и он зависнет в меню, фокус изменится, и я не смогу продолжать писать в текстовом поле.

Есть ли способ это исправить? Я немного погуглил, но безуспешно.

Ответы [ 2 ]

0 голосов
/ 05 августа 2013

У меня такая же проблема со следующей настройкой 1. используя Ext.widget (widg), чтобы создать и открыть (показать) всплывающее окно 2. Виджет определяется с модальной: истинная конфигурация 3. одним из элементов виджета является форма с несколькими полями (поля создаются динамически, и каждый раз форма может содержать разное количество полей)

проблема: когда я перемещаю мышь из области формы (даже если мышь остается внутри всплывающего окна), поле, находящееся в фокусе, теряет фокус. Бывает в 100% случаев.

Спасибо, Чарли

0 голосов
/ 30 января 2012

Так как вы используете Ext.Window, браузер не знает, что что-то за окном не является недействительным для перемещения или иного взаимодействия с ним.Действительно, кто-то может захотеть, чтобы его пользователи могли взаимодействовать с главной страницей за окном.Однако, если вам не нужно это поведение, и предполагается, что окно является единственной вещью, с которой взаимодействует пользователь, вы ищете modal: true.Это создаст маску для остальной части страницы, и на главной странице не будет применено наведение или щелчок.

Пример:

new Ext.Window({
    modal: true
    width: 400,
    height: 600,
    layout: 'fit',
    items: ...
});
...