Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Потеря фокуса элементом, Собственно, как избежать? 
:(
    Опции темы
goldmember
Дата 14.5.2010, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 27.2.2010

Репутация: нет
Всего: нет



При потере фокуса у меня элемент идёт в display='none' с 200 мс задержкой, а как сделать так, чтобы при определённом событии(допустим onmousedown) на каком нибудь другом элементе(определённом) потеря фокуса не происходила, а то что то метод focus() у меня не прошёл....
зы. Например в файрфоксе это по умолчанию реализовано..
PM MAIL   Вверх
bars80080
Дата 14.5.2010, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



а что нужно, отменить скрытие элемента или оставить фокус?

и что реализовано в файерфоксе?
PM MAIL WWW   Вверх
goldmember
Дата 15.5.2010, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 27.2.2010

Репутация: нет
Всего: нет



Цитата

а что нужно, отменить скрытие элемента или оставить фокус?

Собственно скрытие элемента у меня происходит при потере фокуса (расшифрую скрывается не элемент который фокус теряет, а некий див , который привязан к нему логически), так что либо то, либо, то
Цитата

и что реализовано в файерфоксе?

Например, когда я скролю див (тот самый), то текстовое поле не теряет фокуса...
PM MAIL   Вверх
bars80080
Дата 15.5.2010, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



ну тогда проще поставить блокиратор в функцию сокрытия, которая бы проверяла условия, тот элемент или не тот был нажат.
это удобнее, если требуется обойти в реакции какой-то один или два определённых элемента
PM MAIL WWW   Вверх
goldmember
Дата 15.5.2010, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 27.2.2010

Репутация: нет
Всего: нет



Непонятно как проверить в функции обработчика onblur элемент, на котором нажатие было? Ведь srcElement даст текстовое поле, а не див...
PM MAIL   Вверх
bars80080
Дата 15.5.2010, 20:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



ну, скажем на onblur запускается таймаут вызова функции, на стороннем элементе либо как-то определяем фокус, либо просто вешаем на него onclick и изменение общей переменной. мол, это по мне щёлкнули. таймаут вызывает наш обработчик сокрытия, он проверяет состояние переменной и если она true, то никакой реакции (кроме того, что обратно ставим значение переменной)

таймаут в таких случаях максимум до 20 мс, а иногда и через 1-2 можно поставить
PM MAIL WWW   Вверх
goldmember
Дата 17.5.2010, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 27.2.2010

Репутация: нет
Всего: нет



Да это работает, только если onclick сработал на элементе я не див скрываю, а принудительно ставлю фокус полю с которого onblur таймаут запустил...

Это сообщение отредактировал(а) goldmember - 17.5.2010, 15:20
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0467 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.