これはおそらく非常に単純ですが、ページのロード時にテキストボックスでカーソルを点滅させる方法を誰かに教えてもらえますか?
これはおそらく非常に単純ですが、ページのロード時にテキストボックスでカーソルを点滅させる方法を誰かに教えてもらえますか?
回答:
最初のテキストフィールドにフォーカスを設定します。
$("input:text:visible:first").focus();
これは最初のテキストフィールドも行いますが、[0]を別のインデックスに変更できます。
$('input[@type="text"]')[0].focus();
または、IDを使用できます。
$("#someTextBox").focus();
$('input[type="text"]').get(0).focus();
...私のために働いた
これにはHTML5autofocus
を使用できます。jQueryやその他のJavaScriptは必要ありません。
<input type="text" name="some_field" autofocus>
これはIE9以下では機能しないことに注意してください。
承知しました:
<head>
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
$("#myTextBox").focus();
});
</script>
</head>
<body>
<input type="text" id="myTextBox">
</body>
なぜ誰もがこのように単純なものにjQueryを使用しているのですか。
<body OnLoad="document.myform.mytextfield.focus();">
これを行う前に、ユーザーインターフェイスについて検討してください。私は(どの回答もそうではありませんでしたが)jQueryのready()
関数を使用してドキュメントがロードされるときにこれを行うと想定しています。ドキュメントが読み込まれる前にユーザーが既に別の要素にフォーカスしている場合(これは完全に可能です)、フォーカスが奪われるのは非常にイライラします。
これを確認するonfocus
には、各<input>
要素に属性を追加して、ユーザーがすでにフォームフィールドにフォーカスしているかどうかを記録し、次の場合はフォーカスを盗まないようにします。
var anyFieldReceivedFocus = false;
function fieldReceivedFocus() {
anyFieldReceivedFocus = true;
}
function focusFirstField() {
if (!anyFieldReceivedFocus) {
// Do jQuery focus stuff
}
}
<input type="text" onfocus="fieldReceivedFocus()" name="one">
<input type="text" onfocus="fieldReceivedFocus()" name="two">
HTML:
<input id="search" size="10" />
jQuery:
$("#search").focus();
autofocus
、input要素に属性を追加するだけですか?
古い質問にぶつかってごめんなさい。私はこれをグーグル経由で見つけた。
また、複数のセレクターを使用できるため、1つの特定のタイプだけでなく、任意のフォーム要素をターゲットにできることにも注意してください。
例えば。
$('#myform input,#myform textarea').first().focus();
これにより、最初に見つかった入力またはテキストエリアがフォーカスされます。もちろん、他のセレクターをミックスに追加することもできます。特定の要素のタイプが最初であることが確実でない場合、または少し一般的/再利用可能なものが必要な場合は、Hnady。
これは私が使用したいものです:
<script type="text/javascript">
$(document).ready(function () {
$("#fieldID").focus();
});
</script>
autofocus
には、HTML5で提供される属性を使用するだけです