Я решаю это следующим образом:

я есть следующий фрагмент кода:

<div id="listbox1div" style="z-index:95; background:white; overflow-y:auto; overflow-x:hidden; width:240; height:314px;">
<a id="focusLink2"></a>
<table id="ptObj_listbox1...

У меня есть страница, которая строит<div> элементы динамически (такие как выше). Этот<div> отображает данные в верхней части главного экрана. Когда страница генерирует div, я бы хотел установить фокус. Я не могу поместить функцию onLoad в тег body, так как не знаю, когда будут сгенерированы div.

A <div> тег не может иметь фокус на нем непосредственно. Поэтому я поставил пустой<a> тег с идентификатором, который я вызываю в следующей функции:

function setTableFocus(count){
        var flinkText = 'focusLink'+count;
       document.getElementById(flinkText).focus();
}

Я не получаю никаких ошибок, и я знаю, что функция вызывается при представлении страницы (через оповещения). Однако, когда я использую клавиши со стрелками или кнопку ввода, вся страница перемещается (даже не div, представляющий данные).

Когда я нажимаю на один из элементов таблицы (с помощью мыши). После этого событие keydown начинает работать. То, что я хотел бы сделать, это представить данные пользователю и автоматически управляться с клавиатуры.

У кого-нибудь есть предложения, как мне это сделать?

Ответы на вопрос(7)

Ваш ответ на вопрос