как узнать что несколько элементов не в фокусе?
Есть <div> внутри него два элемента, как можно узнать что оба элемента внутри дива не в фокусе? На форме таких групп элементов несколько.
|
document.activeElement |
один из элементов - RadGrid, до него не достучаться через document.activeElement :(
|
RadGrid?
|
да RadGrid (компонент Telerik) в нем отображается выборка из базы, условием для запроса к которой является текстовое поле, расположенное с гридом в одном диве. Собственно эти два компонента должны выполнять роль DropDownList'а за исключением того, что текстовое поле используется для поиска, туда же я переношу выбранное значение из грида. Смысл в том, чтобы скрыть грид тогда когда юзер кликнет (или перейдет табом) мимо него и мимо текстового поля.
|
Цитата:
|
Цитата:
|
В общем, всё дело в том, что мне товарищ devote подсказал абсолютно правильно, нужно было просто чутка поковыряться. скрипт у меня выглядит следующим образом
function hidegrid(gridid, divgrid) { if (document.activeElement.tagName == "TD") { var x = document.activeElement.parentElement; var y = x.parentElement var z = y.parentElement; if (z.parentElement.id != gridid) { document.getElementById(divgrid).style.display = "none"; } } else { document.getElementById(divgrid).style.display = "none"; } } Я не претендую на самое изящное решение, но хотелось бы, чтобы работало в основных браузерах. В IE как это ни странно работает, а вот Chrome каждый раз активным считается элемент BODY, как с этим бороться? :help: Ну и если подскажете как написать проще буду тоже очень рад. |
Часовой пояс GMT +3, время: 19:29. |