Tampaknya ini adalah fitur baru di JQuery UI 1.9.0, karena saya sering menggunakan JQuery UI sebelumnya dan teks ini tidak pernah muncul.
Tidak dapat menemukan apa pun yang terkait dengan dokumentasi API.
Jadi, menggunakan contoh pelengkapan otomatis dasar dengan sumber lokal
$( "#find-subj" ).autocomplete({
source: availableTags
});
Saat pencarian cocok, teks pembantu terkait ini akan ditampilkan:
'1 hasil tersedia, gunakan tombol panah atas dan bawah untuk menavigasi.'
Bagaimana saya bisa menonaktifkannya dengan cara yang baik, bukan dengan menghapusnya dengan pemilih JQuery.
javascript
jquery
jquery-ui
autocomplete
pengguna1236048
sumber
sumber
Jawaban:
Saya tahu ini telah terjawab tetapi hanya ingin memberikan contoh implementasi:
sumber
source: availableTags
? Saya menghapusnya dan saya masih tidak memiliki pesan.availableTags
bisa menjadi variabel lokal yang berisi objek JSON dari url ke pemetaan kata.[{ '/tag/cats': 'Cats', etc... }]
Jadi ketika pengguna jenisCa
Kucing akan muncul di dropdown dan ketika dipilih atau diklik itu dapat mengisi bidang tersembunyi dengan url misalnya.Ini digunakan untuk aksesibilitas, cara mudah untuk menyembunyikannya adalah dengan CSS:
Atau (lihat komentar Daniel di bawah)
sumber
left: -9999px
, Anda juga dapat menggunakanleft: 200%
(200% vs. 100% hanya untuk memperhitungkan kemungkinan kebiasaan peramban di mana 100% tidak cukup menariknya dari layar).Jawaban teratas di sini mencapai efek visual yang diinginkan, tetapi mengalahkan objek jQuery yang memiliki dukungan ARIA, dan agak menjijikkan bagi pengguna yang mengandalkannya! Mereka yang telah menyebutkan bahwa jQuery CSS menyembunyikan ini untuk Anda benar, dan inilah gaya yang melakukannya:
Salin itu ke stylesheet Anda alih-alih menghapus pesannya, silakan :).
sumber
clip
properti, karena sekarang sudah tidak digunakan lagi - lihat developer.mozilla.org/en-US/docs/Web/CSS/clipMenurut blog ini :
Jadi jika Anda pergi ke github dan melihat kode sumber pelengkapan otomatis , sekitar baris 571 Anda akan melihat di mana ini sebenarnya diterapkan.
sumber
Menambahkan css jquery juga berfungsi untuk menghapus teks instruksional.
sumber
Karena ini ada di sana untuk alasan aksesibilitas, mungkin yang terbaik adalah menyembunyikannya dengan CSS.
Namun, saya menyarankan:
Daripada:
Karena yang pertama akan menyembunyikan item di luar layar, tetapi masih memungkinkan pembaca layar untuk membacanya, sedangkan
display:none
tidak.sumber
left: -9999px
, cukup gunakanleft: 200%
(200% vs. 100% hanya untuk memperhitungkan kemungkinan kebiasaan peramban di mana 100% tidak cukup menariknya dari layar).Nah, pertanyaan ini sedikit lebih lama, tetapi teks tidak muncul sama sekali ketika Anda menyertakan file css yang sesuai:
Tentu saja Anda harus memasukkan tema sebenarnya, bukan
YOUR_THEME_HERE
misalnya "kehalusan"sumber
Beri gaya bagaimana tema jQuery itu sendiri menatanya. Banyak dari jawaban lain menyarankan untuk menyertakan seluruh stylesheet, tetapi jika Anda hanya menginginkan CSS yang relevan, begini caranya
http://code.jquery.com/ui/1.9.0/themes/smoothness/jquery-ui.css
:sumber
Menambahkan kode ini tepat setelah pelengkapan otomatis di skrip Anda akan membuat helper yang mengganggu keluar dari halaman, tetapi orang yang menggunakan pembaca layar masih akan mendapatkan keuntungan darinya:
Saya bukan penggemar memanipulasi CSS dengan JS tetapi dalam hal ini saya pikir itu masuk akal. Kode JS menciptakan masalah di tempat pertama, dan masalah akan diselesaikan beberapa baris di bawah ini dalam file yang sama. IMO ini lebih baik daripada menyelesaikan masalah dalam file CSS terpisah yang mungkin diedit oleh orang lain yang tidak tahu mengapa kelas .ui-helper-hidden-dapat diakses dimodifikasi seperti itu.
sumber
left: -9999px
, cukup gunakanleft: 200%
(200% vs. 100% hanya untuk memperhitungkan kemungkinan kebiasaan peramban di mana 100% tidak cukup menariknya dari layar).CSS jQuery .ui-helper-hidden-diakses ada di file themes / base / core.css. Anda harus menyertakan file ini (minimal) di stylesheet Anda untuk kompatibilitas ke depan.
sumber