Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   focus() для элемента, не поддерживающего событие focus (https://javascript.ru/forum/jquery/23779-focus-dlya-ehlementa-ne-podderzhivayushhego-sobytie-focus.html)

mosgaz 06.12.2011 03:42

focus() для элемента, не поддерживающего событие focus
 
Подскажите, как можно включить «фокусировку» для элемента, не поддерживающего событие focus (DIV, SPAN, TD, LI и т.д)?

ksa 06.12.2011 08:45

mosgaz, а как ты себе представляешь "фокус" на элементе, который тот "фокус" не поддерживает?

Kolyaj 06.12.2011 09:16

Укажите tabindex.

mosgaz 06.12.2011 10:45

Цитата:

Сообщение от ksa (Сообщение 140987)
mosgaz, а как ты себе представляешь "фокус" на элементе, который тот "фокус" не поддерживает?

ksa, я бы не спрашивал, если бы знал наверняка. Но подозреваю, что это возможно реализовать через bind || live || trigger.
Создается новый DOM-элемент на который должен переместиться текстовый курсор (focus). Уверен, что вопрос 2-3х строчек кода, но я уже в течении д-цати мучаю яндекс и гугл - безрезультатно. Думал даже об эмуляции .click()

Kolyaj, tabindex в моем случае не подходит. В таблице, Tab и Shift+Tab ведут себя одним образом, в списках - другим, в div и p - отступ.

Kolyaj 06.12.2011 11:02

Цитата:

Сообщение от mosgaz
Kolyaj, tabindex в моем случае не подходит. В таблице, Tab и Shift+Tab ведут себя одним образом, в списках - другим, в div и p - отступ.

Чего-то я не уловил смысла в этом приложении.
Ещё раз: если хотите, чтобы div получал фокус, выставьте ему tabindex.

mosgaz 06.12.2011 11:22

Цитата:

Сообщение от Kolyaj (Сообщение 140999)
Чего-то я не уловил смысла в этом приложении.
Ещё раз: если хотите, чтобы div получал фокус, выставьте ему tabindex.

Kolyaj, div или любой другой элемент c tabindex'ом получит фокус при нажатии Tab (если это не переопределено). Но вопрос в том, как передать фокус на определенный элемент (переместить текстовый курсор) после выполнения n-ой функции, т.е. не зависимо от нажатия Tab, безусловно.

Kolyaj 06.12.2011 11:32

У div-а не может быть текстового курсора, если он не contenteditable.

mosgaz 06.12.2011 11:38

Цитата:

Сообщение от Kolyaj (Сообщение 141004)
У div-а не может быть текстового курсора, если он не contenteditable.

Kolyaj, прошу прощения, забыл упомянуть. Работаю над визуальным редактором. Все элементы находятся в iframe, который contenteditable.

mosgaz 06.12.2011 14:37

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

melky 06.12.2011 16:58

у вас сообщения противопоставлены друг другу.
придётся вас послать читать мануалы.

PS myElement.focus() должно хватить, если элемент его держит.


Часовой пояс GMT +3, время: 20:01.