Как свернуть поле выбора, когда оно развернуто в chrome/safari?

У меня есть требование, в котором я должен свернуть поле выбора, когда пользователь наводит курсор на ссылку.

Мой код работает в FF и IE, но не в Safari и Chrome. Вот его упрощенная версия.

Посоветуйте, что мне не хватает?

Редактировать: Спасибо, Роб, за указание на это. Когда я сказал «мне нужно потерять фокус», я имел в виду: «мне нужно свернуть поле выбора и переместить фокус/размыть».

Изменить: я думаю, что мой вопрос и резюме были неправильными/вводящими в заблуждение. Я попытался перефразировать его, чтобы показать мое требование/проблему. В любом случае, вот то, что у меня есть сейчас. Это хак, но, похоже, теперь он работает и в Chrome, однако Safari по-прежнему трудно получить. Любые советы?


person Mandeep    schedule 25.06.2012    source источник
comment
Он отлично работает, если поле выбора не расширено.   -  person Rob W    schedule 25.06.2012
comment
это работает нормально. по крайней мере для вашей демонстрации.   -  person Zahid Riaz    schedule 25.06.2012


Ответы (1)


Я предполагаю, что это далеко от вашей потребности в этом, и это не «хорошее» решение, но на случай, если кто-нибудь столкнется с этим. Я смог заставить его работать в Chrome с вашим существующим кодом, только скрыв выбор при наведении на ссылку, а затем снова показав его, когда мышь ушла (я не пробовал Safari).

http://jsfiddle.net/52enE/

Есть еще одно решение для создания фиктивного выбора, но в то время сообщалось, что оно не работает в последней версии Chrome:

Программно закрыть раскрывающийся список SELECT с помощью Javascript/jQuery

Поскольку браузер контролирует выбор и то, как просматриваются элементы формы, вероятно, нет хорошего способа обойти это... «лучшим» (все еще не очень хорошим) решением, вероятно, будет использование пользовательского ввода, который действует как выбор, но может полностью контролироваться вызовом hide()... или найти способ изменить требования :)

person Kevin Nelson    schedule 11.09.2012