次のコードスニペットがあります。
<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を生成するときに、フォーカスを設定したいと思います。divがいつ生成されるかわからないため、bodyタグにonLoad関数を配置できません。
タグに直接フォーカスを設定する<div>
ことはできません。<a>
そこで、次の関数で呼び出しているIDを持つ空のタグを配置します。
function setTableFocus(count){
var flinkText = 'focusLink'+count;
document.getElementById(flinkText).focus();
}
エラーは発生せず、ページが表示されたときに(アラートを介して)関数が呼び出されていることがわかります。ただし、矢印キーまたはEnterボタンを使用すると、ページ全体が移動します(データを表示しているdivも移動しません)。
(マウスを使用して)テーブル要素の1つをクリックしたとき。その後、キーダウンイベントが機能し始めます。私がこれをしたいのは、データをユーザーに提示し、自動的にキーボードで駆動することです。
誰かが私がこれを達成する方法について何か提案がありますか?