私は入力フィールドと閉じるボタンを持っています。 ページを読み込むときに、入力テキストフィールド(ready
)にフォーカスを合わせますが、他の機能(tab
をクリックしたとき)の同じフォーカスコマンド$("#param_pattern_value").focus();
は、テキスト入力フィールドの代わりに閉じるボタンにフォーカスします。入力フィールドの代わりにボタンをフォーカス
HTML:
<div tabindex="-1" class="layout-column layout-gt-xs-row layout-align-start-center layout-margin">
<div tabindex="-1" class="classic-text-input mdl-textfield mdl-js-textfield mdl-textfield--floating-label flex">
<input tabindex="0" class="mdl-textfield__input" type="text" id="param_pattern_value" value="enter text">
<label class="mdl-textfield__label" for="param_pattern_value">
<span>enter 1</span>
</label>
<button tabindex="0" class="mdl-button mdl-js-button mdl-button--icon mdl-button--accent margin-left clear_icon_in_input">
<i class="material-icons mdl-textfield__label__icon">close</i>
</button>
</div>
</div>
JS:
$(document).ready(function() {
$('#param_pattern_value').focus()
});
$("body").keydown(function(e){
var TAB = 9;
var key = e.which;
if (key == TAB){
$("#param_pattern_value").focus();
}
});
私は多くのバリエーションを試してみましたが、常にtab
をクリックした後にそれが閉じるボタンに焦点を当てました。
私のサイトでは、閉じるボタンは入力フィールド内に配置された "X"アイコンです(コードは同じように見えます)。
何か間違っていますか?
ありがとうございます!
マイク
ありがとうございます!それは問題を解決しました。他の同様の問題の良い点。私はこのボタンに焦点を当てる必要があるので、tabindex = "0"のままにしておきます。 – Mike