Показать сообщение отдельно
  #1 (permalink)  
Старый 21.11.2012, 12:02
Новичок на форуме
Отправить личное сообщение для XPyCTang Посмотреть профиль Найти все сообщения от XPyCTang
 
Регистрация: 21.11.2012
Сообщений: 5

Как побороть "активированный" DIV?
Облазил на сколько сил хватило инет, видимо сил иссякли...

Упрощенно на странице два DIVа вложенные один в другой с "overflow: hidden" - окошко со списком (соответственно, если список большой то он начинает скроллиться). Список управляется стрелочками на клавиатуре. Чтобы не было "лишнего" скролла действие по умолчанию "убито".
После выбора чего-то из списка, открывается другое окошко, но там свои события по нажатию клавиш, следовательно то, что было для первого окошка со списком стирается (стрелочками список уже не управляется и тп и тд). Но теперь вылезает проблема: поскольку что-то выбиралось из списка, то DIV остался "активным", а мои события по клавишам стерты, список начинает прокручиваться действие браузера по умолчанию. Если, конечно, кликнуть куда, то все ок... Как побороть эту "паразитную" прокрутку или, что более предпочтительно, как снять это выделение.

"Активированный" DIV не находится в фокусе, блур на него не действует, можно пробовать передать фокус другому элементу, но для этого нужно будет генерить, а потом удалять, что не айс. Переход по табу кстати попадает на окошко со списком, что намекает на фокус на DIV, и даже является им, поскольку срабатывает событие onfocus, и даже являет в некотором роде решением задачи (путем физических извращений в виде нажатия на кнопку табуляции)...
Ответить с цитированием