Ini mungkin sangat sederhana, tetapi bisakah seseorang memberi tahu saya cara membuat kursor berkedip pada kotak teks pada pemuatan halaman?
Ini mungkin sangat sederhana, tetapi bisakah seseorang memberi tahu saya cara membuat kursor berkedip pada kotak teks pada pemuatan halaman?
Jawaban:
Tetapkan fokus pada bidang teks pertama:
$("input:text:visible:first").focus();
Ini juga melakukan bidang teks pertama, tetapi Anda dapat mengubah [0] ke indeks lain:
$('input[@type="text"]')[0].focus();
Atau, Anda dapat menggunakan ID:
$("#someTextBox").focus();
$('input[type="text"]').get(0).focus();
... bekerja untuk saya
Anda dapat menggunakan HTML5autofocus
untuk ini. Anda tidak perlu jQuery atau JavaScript lainnya.
<input type="text" name="some_field" autofocus>
Catatan ini tidak akan berfungsi pada IE9 dan lebih rendah.
Tentu:
<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>
Mengapa semua orang menggunakan jQuery untuk sesuatu yang sederhana seperti ini.
<body OnLoad="document.myform.mytextfield.focus();">
Pikirkan tentang antarmuka pengguna Anda sebelum Anda melakukan ini. Saya berasumsi (meskipun tidak ada jawaban yang mengatakan demikian) bahwa Anda akan melakukan ini ketika dokumen dimuat menggunakan ready()
fungsi jQuery . Jika pengguna telah memfokuskan pada elemen yang berbeda sebelum dokumen dimuat (yang sangat mungkin) maka sangat menjengkelkan bagi mereka untuk memiliki fokus dicuri.
Anda bisa memeriksa ini dengan menambahkan onfocus
atribut di masing-masing <input>
elemen Anda untuk merekam apakah pengguna telah fokus pada bidang formulir dan kemudian tidak mencuri fokus jika mereka memiliki:
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
atribut ke elemen input?
Maaf karena menabrak pertanyaan lama. Saya menemukan ini melalui google.
Perlu juga dicatat bahwa mungkin untuk menggunakan lebih dari satu pemilih, sehingga Anda dapat menargetkan elemen bentuk apa pun, dan bukan hanya satu jenis tertentu.
misalnya.
$('#myform input,#myform textarea').first().focus();
Ini akan memfokuskan input atau teks pertama yang ditemukannya, dan tentu saja Anda dapat menambahkan pemilih lain ke dalam campuran juga. Hnady jika Anda tidak dapat memastikan jenis elemen tertentu menjadi yang pertama, atau jika Anda menginginkan sesuatu yang agak umum / dapat digunakan kembali.
Inilah yang saya lebih suka gunakan:
<script type="text/javascript">
$(document).ready(function () {
$("#fieldID").focus();
});
</script>
autofocus
atribut yang disediakan oleh HTML5
tempat setelah input
<script type="text/javascript">document.formname.inputname.focus();</script>
Cara sederhana dan termudah untuk mencapai ini
$('#button').on('click', function () {
$('.form-group input[type="text"]').attr('autofocus', 'true');
});
Baris itu $('#myTextBox').focus()
sendiri tidak akan meletakkan kursor di kotak teks, sebagai gantinya gunakan:
$('#myTextBox:text:visible:first').focus();