Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Saya Boleh Jadikan Elemen `` Dapat Difokuskan dalam JavaScript?

Bagaimanakah Saya Boleh Jadikan Elemen `` Dapat Difokuskan dalam JavaScript?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-05 11:04:02851semak imbas

How Can I Make a `` Element Focusable in JavaScript?

Mengakses Fokus pada

Elemen melalui JavaScript

Walaupun terdapat kebolehfokusan yang wujud bagi elemen tertentu (seperti input dan butang), tidak mungkin untuk memfokus pada

elemen menggunakan fungsi fokus() JavaScript.

Menetapkan TabIndex

Untuk mendayakan fokus pada

, seseorang mesti memberikannya atribut tabindex, yang menentukan kedudukannya dalam susunan tab halaman. Menetapkan indeks tab 0 membolehkan elemen difokuskan oleh pengguna atau melalui JavaScript.

<code class="html"><div id="tries" tabindex="0">You have 3 tries left</div></code>

Menetapkan Fokus dengan JavaScript

Selepas menetapkan indeks tab, elemen boleh difokuskan secara pengaturcaraan menggunakan fungsi fokus():

<code class="javascript">document.getElementById('tries').focus();</code>

Pertimbangan

  • Indeks tab -1 menjadikan elemen boleh difokuskan hanya melalui JavaScript, bukan interaksi pengguna.
  • Elemen yang boleh difokuskan boleh menerima acara papan kekunci dan penggayaan semasa fokus (cth., menukar warna latar belakang).
  • Elakkan memberikan indeks tab kepada elemen yang tidak sepatutnya boleh difokuskan pengguna untuk kebimbangan kebolehaksesan.

Contoh

Contoh berikut menunjukkan penugasan fokus dan isyarat visual:

<code class="html"><style>
div:focus {
    background-color: Aqua;
}
</style>

<div>Element X (not focusable)</div>
<div tabindex="0">Element Y (user or script focusable)</div>
<div tabindex="-1" id="scripted">Element Z (script-only focusable)</div>

<div id="test" onclick="document.getElementById('scripted').focus();">Set Focus To Element Z</div></code>

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Jadikan Elemen `` Dapat Difokuskan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn