![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: 2 Всего: 32 |
Здравствуйте!
Вот нашел такую конструкцию:
Только кроме как в ИЕ, вроде этот метод не подходит. Есть ли универсальный способ? -------------------- ![]() ![]() |
|||
|
||||
| korisarimi |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 111 Регистрация: 9.5.2006 Репутация: нет Всего: 1 |
А чем не подходит просто
|
|||
|
||||
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: 2 Всего: 32 |
Нет, мне надо сделать условие, где проверяется находится ли элемент формы в фокусе. Я долго думал как это сделать, но ничего не вышло. onFocus - вообще не в кассу тут.
-------------------- ![]() ![]() |
|||
|
||||
| Avb |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 5.7.2006 Репутация: 4 Всего: 13 |
По событию focus ставишь признак, что элемент в фокусе (например, заносишь в соответствующую переменную ссылку на данный объект). По событию blur - снимаешь этот признак.
Как это организовать тебе виднее. |
|||
|
||||
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: 2 Всего: 32 |
Короче я понял. С переменной у меня были идеи - не подошло, (не по эстетическим соображениям
Это сообщение отредактировал(а) GZep - 27.10.2006, 15:54 -------------------- ![]() ![]() |
|||
|
||||
| Avb |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 115 Регистрация: 5.7.2006 Репутация: 4 Всего: 13 |
GZep, не спешите отчаиваться.
Как Вам такой вариант: Всем элементам, которые надо проверять добавить свойство hasFocus и навесить события focus и blur, обработчики которых будут менять это св-во соотв-м образом. Пример:
Тут я использую библиотеку prototype.js (Привык уже. Но главное логика, а реализовать при необходимости можно и без prototype.js) $$("body input") - массив инпутов. each - понятно. Для каждого элемента массива выполняем функцию-аргумент. element.hasFocus = false; - изначально фокуса нет. Event.observe - кроссбраузерный addEventListener/attachEvent (который к тому же заботится о том, чтоб не было memory leaks) Event.observe(element, "mouseover", function(){ $("test").firstChild.nodeValue = element.hasFocus; }, false); - для тестирования |
|||
|
||||
| GZep |
|
|||
![]() участник Винграда ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1528 Регистрация: 7.7.2006 Где: Москва Репутация: 2 Всего: 32 |
Avb, спасибо Вам огромное! Очень красивое решение - пройтись циклом по всем элементам...
Сам я не догадался до такого решения, но к моему счастью в мире еще есть умные люди. Это сообщение отредактировал(а) GZep - 1.11.2006, 14:16 -------------------- ![]() ![]() |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |