Belajar Fokus ()
3
Takeaways Key
Untuk kebolehcapaian web, menguruskan fokus adalah penting dalam widget interaktif yang didorong oleh JavaScript. Adalah penting untuk menggunakan fokus programatik untuk memastikan pengguna dapat berinteraksi dengan pelbagai bahagian antara muka, walaupun tanpa menggunakan tetikus.
Apabila menutup dialog atau tingkap modal, ia adalah logik untuk memfokuskan semula elemen yang membuka dialog. Ini boleh dilakukan dengan menyelamatkan nod DOM dalam ingatan atau menulis penanda di atasnya untuk kegunaan kemudian. Ini membantu pengguna mengetahui lokasi mereka di halaman dan menghalang mereka daripada menyebarkan dokumen untuk mencari tempat mereka lagi.
- Terima kasih kepada Good Fortune, saya mempunyai sepasang mata yang berfungsi. Ketika datang untuk melintasi laman web, ini adalah sesuatu yang menjadi rahmat sejak memindahkan tumpuan saya dari satu bahagian halaman ke yang lain tidak memerlukan apa-apa selain dari separuh sadar mengidap otot-otot tambahan saya dan berputar mata saya sebahagian kecil daripada lilitan mereka.
- Walaupun visual saya - dan, oleh itu, fokus kognitif - kini boleh dikatakan telah berubah, antara muka pengguna itu sendiri tidak tahu perhatian saya telah berubah. Sekurang -kurangnya, tidak sampai saya mula berinteraksi secara fizikal dengan rantau yang baru diteliti. Untuk meletakkannya dengan cara lain, berputar bola mata saya adalah acara yang tidak direkodkan.
- di sini terletak isu aksesibiliti yang sangat biasa tetapi sering tidak disesuaikan: Jika saya tidak menggunakan mata saya (dan tangan tetikus saya ke arah), bagaimana saya 'fokus' pada sesuatu untuk kemudian berinteraksi dengannya? Jawapannya, kerana saya pasti anda tahu, adalah melalui fokus programatik. Walau bagaimanapun, ia tidak semudah menggabungkan unsur -unsur 'fokus' ke dalam reka bentuk kami. Kadang -kadang ia bukan pengguna tetapi antara muka pada nama pengguna yang mesti memindahkan fokus antara kawasan yang berbeza. Ini memerlukan pengurusan fokus yang disengajakan di pihak pemaju.
Untuk kebolehcapaian, menguruskan fokus adalah penting dalam banyak walaupun widget interaktif yang paling mudah dipacu oleh JavaScript, tetapi penggunaan yang betul hampir mustahil untuk diuji dengan alat QA Automatik. Itulah sebabnya saya ingin membawa anda melalui beberapa contoh mudah hari ini.
Animasi ScrollTop
Dalam contoh ini, saya menjemput anda untuk membayangkan anda telah 'meningkatkan' pautan navigasi halaman yang sama supaya, bukannya melompat tiba-tiba ke serpihan sasaran pautan (#Bahagian1, katakan), anda diarahkan perlahan-lahan ke destinasi ini melalui animasi scrolltop JavaScript. Perkara penting yang perlu diperhatikan mengenai kebolehcapaian apabila menggunakan teknik ini adalah keperluan untuk mengatasi fungsi lalai elemen .
event<span>.preventDefault();</span>
Dengan melakukan ini, anda memberitahu penyemak imbas untuk mengelakkan, dengan semua kos, melakukan apa -apa standard, yang diharapkan atau interoperable. Anda memberitahu pautan pautan tidak . Malah, satu -satunya cara untuk memastikan pautan itu sebenarnya mengambil pengguna dengan betul ke fragmen halaman adalah untuk mematikan JavaScript. Nah, kemudian.
dengan hanya menghubungkan ke fragmen halaman - seperti yang akan dilakukan oleh JavaScript - penyemak imbas pada dasarnyamemfokuskan serpihan ini. Di sinilah output pembaca skrin dan interaksi papan kekunci kini berasaskan. Dengan menghidupkan scrolltop, tiada tindakan fokus seperti itu berlaku, bermakna output pembaca skrin dan interaksi papan kekunci berterusan dari kawasan halaman yang tidak lagi dilihat. Ini tidak baik.
ubatkita perlu memfokuskan serpihan destinasi melalui JavaScript. Mula -mula kita perlu membuat fragmen secara fokus untuk dimulakan, yang memerlukan penggunaan atribut TabIndex. Nilai tabIndex -1 adalah nilai khas yang bermaksud skrip boleh memfokuskan elemen, tetapi bukan pengguna. Ini lebih baik untuk TabIndex: 0 Dalam kes ini, kerana tidak ada sebab mengapa elemen tidak interaktif ini harus fokus menggunakan kunci tab.
Nota: Terima kasih kepada Patrick dan lain-lain dalam komen untuk menunjukkan fakta bahawa ini harus menggunakan "-1" dan bukannya "0" untuk nilai TabIndex, yang telah kami diperbetulkan. 🎜> Tugas kedua kami adalah untuk memasukkan kaedah JavaScript Focus () dalam panggilan balik animasi, memastikan serpihan difokuskan
selepas<span><span><span><section</span> id<span>="section1"</span> tabindex<span>="-1"</span>></span> </span> ... <span><span><span></section</span>></span></span>
Akhirnya, adalah idea yang baik untuk merakam lokasi sub-halaman kami di URL, seperti yang akan berlaku dengan hanya menghubungkan ke serpihan (mis. Http: // my-site/#seksyen1). Dengan cara ini kita dapat menyalin alamat sebagai pautan ke bahagian tertentu (iaitu kita boleh "mendalam pautan"). Sertakan baris berikut selepas fokus () telah berlaku:
<span>document.getElementById('section1').focus();</span>
<span>window.location.hash = 'section1';</span>
Demo codepen kecil tertanam di bawah. Cuba gunakan dengan tab Tab dan Shift hanya sebagai pengguna papan kekunci biasa.
<span><span><span><a</span> href<span>="#whatever"</span>></span>scroll to section 'whatever'<span><span></a</span>></span></span>
lihat pen idxjl oleh sitepoint (@sitePoint) pada codepen.
Ambil perhatian bahawa kami menambah atribut TabIndex dengan cepat di JavaScript kami. Sekarang kita memfokuskan bahagian -bahagian (serpihan) yang kita tatal, lokasi yang kita anggap lebih daripada sekadar visual. Iaitu, saya harus menekan kekunci Tab selepas berpindah ke bahagian baru, saya akan memfokuskan elemen fokus seterusnya dalam bahagian itu; Hyperlink membaca 'heydonworks.com', dalam contoh berikut.
event<span>.preventDefault();</span>
Sekiranya kita tidak memfokuskan seksyen1, menekan kekunci Tab akan memberi tumpuan kepada elemen seterusnya berikutan pautan menghasut, yang akan melompat kembali ke blok navigasi kami. Dalam erti kata lain, pengguna papan kekunci akan kembali ke satu persegi.
<span><span><span><section</span> id<span>="section1"</span> tabindex<span>="-1"</span>></span> </span> ... <span><span><span></section</span>></span></span>
Dialog Penutup (Windows Modal)
Berikut adalah satu lagi contoh kecil. Mari kita berpura -pura pengguna telah menekan
Untuk membuat pembukaan butang ini boleh diakses, kita harus memberi tumpuan () dialog dengan cara yang sama seperti yang kita tumpukan serpihan halaman dalam contoh terakhir. Menggunakan JQueryui, butang pertama dialog ('mengesahkan', dalam kes kita) akan difokuskan. Pelaksanaan lain memfokuskan bekas dialog. Sama ada cara, pengguna secara pemrograman dihantar ke tempat yang betul .
<span>document.getElementById('section1').focus();</span>
Persoalannya ialah, 'Apa yang berlaku untuk memberi tumpuan apabila dialog ditutup?' Jika kita tidak berbuat apa -apa, dialog yang baru tersembunyi semestinya kehilangan tumpuan tetapi tidak ada tempat yang akan berlaku. Dalam banyak ejen pengguna, ini bermakna
difokuskan secara lalai, menjadikan pengguna menyeberang melalui dokumen untuk mencari tempat mereka lagi.Ia akan lebih logik untuk memfokuskan semula elemen yang membuka dialog. Ini mudah dilakukan dengan hanya menyimpan nod dom dalam ingatan atau menulis penanda di atasnya untuk kegunaan kemudian, seperti ini:
<span>window.location.hash = 'section1';</span>
Pada akhir kaedah dekat dialog (), kami akan memfokuskan elemen asal:
<span><span><span><a</span> href<span>="#whatever"</span>></span>scroll to section 'whatever'<span><span></a</span>></span></span>
Kebanyakan pembaca skrin, apabila butang yang diubahsuai, akan mengumumkan tajuk halaman, maka butang yang difokuskan. Dengan cara itu, anda tahu di mana anda berada. Contoh dialog menggunakan kaedah ini tersedia untuk ujian sekiranya anda inginkan.
Kesimpulan
Ini adalah kesilapan yang sama untuk mengatasi peningkatan progresif dengan aksesibiliti; Untuk berfikir bahawa memastikan sesuatu yang merosot untuk bekerja dengan JavaScript dimatikan (seperti yang akan berlaku dalam kes ini) bermakna ia 'boleh diakses'. Pasti, ia menjadikannya mudah diakses oleh mereka yang tidak mempunyai JavaScript, tetapi kebanyakan pengguna papan kekunci dan pembaca skrin berinteraksi dengan aplikasi anda dengan bantuan JavaScript seperti orang lain. Caranya ialah menggunakan JavaScript dengan cara yang menghormati tingkah laku dan input yang berbeza dari semua pengguna anda dan sebarang teknologi bantuan yang mungkin mereka gunakan.
Satu lagi perkara: Jika anda pernah didakwa bekerja pada aplikasi satu halaman yang dibina dengan, katakan, emer.js atau angularjs, grep codebase untuk kaedah fokus JavaScript (). Aplikasi sedemikian sepenuhnya menulis semula navigasi menggunakan 'pandangan'; Dinamik membina semula halaman tunggal. Tanpa beberapa pengurusan fokus yang teliti, membina semula DOM sedemikian rupa boleh mengasah aksesibiliti dengan cepat. Sekiranya grep anda mendapati kurang daripada beberapa contoh .fokus, mungkin terdapat banyak kerja yang perlu dilakukan.
soalan yang sering ditanya mengenai peningkatan tumpuan dan tumpuan
Apakah beberapa cara praktikal untuk meningkatkan tumpuan dan tumpuan saya?
Terdapat beberapa cara praktikal untuk meningkatkan tumpuan dan tumpuan. Pertama, mengekalkan gaya hidup yang sihat adalah penting. Ini termasuk tidur yang cukup, makan diet seimbang, dan aktiviti fizikal biasa. Kedua, kesedaran dan meditasi dapat membantu melatih otak anda untuk memberi tumpuan lebih baik. Ketiga, meminimumkan gangguan, seperti mematikan pemberitahuan pada peranti anda, dapat membantu anda menumpukan pada tugas di tangan. Akhir sekali, mengambil rehat tetap sebenarnya boleh meningkatkan tumpuan dan produktiviti anda dalam jangka masa panjang.
Bagaimana saya boleh fokus semasa belajar? belajar. Ini bermakna ruang yang tenang dan terang dengan gangguan yang minimum. Ia juga berguna untuk memecahkan sesi kajian anda ke dalam ketulan yang boleh diurus, biasanya 25-30 minit, diikuti dengan rehat yang singkat. Teknik ini dikenali sebagai teknik Pomodoro. Di samping itu, menetapkan matlamat yang jelas dan boleh dicapai untuk setiap sesi kajian boleh membuat anda bermotivasi dan fokus.
Bolehkah meditasi membantu meningkatkan tumpuan dan kepekatan? Ia melatih otak anda untuk memberi tumpuan kepada masa sekarang dan mengabaikan gangguan. Amalan biasa boleh membawa kepada rentang perhatian yang lebih baik dan fungsi kognitif yang lebih baik.
Bagaimana tidur mempengaruhi tumpuan dan tumpuan?
Tidur memainkan peranan penting dalam fungsi kognitif. Kekurangan tidur boleh menjejaskan perhatian, tumpuan, dan kemahiran membuat keputusan. Oleh itu, tidur yang cukup berkualiti adalah penting untuk mengekalkan tumpuan dan tumpuan yang baik. pada peranti anda. Untuk mengelakkan ini, anda boleh menetapkan masa tertentu untuk memeriksa e -mel dan media sosial anda. Mematikan pemberitahuan yang tidak perlu juga boleh membantu meminimumkan gangguan.
Bagaimana saya boleh melatih otak saya untuk memberi tumpuan lebih baik? Teknik seperti kesedaran dan meditasi dapat membantu. Di samping itu, mencabar otak anda dengan teka -teki dan permainan juga boleh meningkatkan fungsi dan fokus kognitif. dan kepekatan. Oleh itu, menguruskan tekanan melalui teknik -teknik seperti pernafasan yang mendalam, yoga, dan kesedaran dapat membantu meningkatkan tumpuan dan kepekatan.
Atas ialah kandungan terperinci Belajar Fokus (). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Soalan dan penyelesaian yang sering ditanya untuk percetakan tiket kertas terma depan dalam pembangunan front-end, percetakan tiket adalah keperluan umum. Walau bagaimanapun, banyak pemaju sedang melaksanakan ...

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

Tidak ada gaji mutlak untuk pemaju Python dan JavaScript, bergantung kepada kemahiran dan keperluan industri. 1. Python boleh dibayar lebih banyak dalam sains data dan pembelajaran mesin. 2. JavaScript mempunyai permintaan yang besar dalam perkembangan depan dan stack penuh, dan gajinya juga cukup besar. 3. Faktor mempengaruhi termasuk pengalaman, lokasi geografi, saiz syarikat dan kemahiran khusus.

Pembelajaran JavaScript tidak sukar, tetapi ia mencabar. 1) Memahami konsep asas seperti pembolehubah, jenis data, fungsi, dan sebagainya. 2) Pengaturcaraan asynchronous tuan dan melaksanakannya melalui gelung acara. 3) Gunakan operasi DOM dan berjanji untuk mengendalikan permintaan tak segerak. 4) Elakkan kesilapan biasa dan gunakan teknik debugging. 5) Mengoptimumkan prestasi dan mengikuti amalan terbaik.

Perbincangan mengenai realisasi kesan animasi tatal dan elemen Parallax dalam artikel ini akan meneroka bagaimana untuk mencapai yang serupa dengan laman web rasmi Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ... ...

Trend terkini dalam JavaScript termasuk kebangkitan TypeScript, populariti kerangka dan perpustakaan moden, dan penerapan webassembly. Prospek masa depan meliputi sistem jenis yang lebih berkuasa, pembangunan JavaScript, pengembangan kecerdasan buatan dan pembelajaran mesin, dan potensi pengkomputeran IoT dan kelebihan.

Bagaimana cara menggabungkan elemen array dengan ID yang sama ke dalam satu objek dalam JavaScript? Semasa memproses data, kita sering menghadapi keperluan untuk mempunyai id yang sama ...

Masalah kemas kini data dalam operasi Zustand Asynchronous. Apabila menggunakan Perpustakaan Pengurusan Negeri Zustand, anda sering menghadapi masalah kemas kini data yang menyebabkan operasi tak segerak menjadi tidak lama lagi. � ...
