0Pricing
React Academy · Ders

Otomatik Tamamlama Bileşenlerinde Erişilebilirlik

Bileşeni ekran okuyuculara uygun hâle getirmek için aria-autocomplete, aria-expanded, role=listbox ve role=option uygulayın

Otomatik Tamamlama Bileşenlerinde Erişilebilirlik, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.

Birleşik Kutu için ARIA Deseni

WAI-ARIA birleşik kutu deseni, otomatik tamamlama bileşenleri için belirli bir rol ve özellik kümesi tanımlar. Birleşik kutu, bir liste kutusu açılır penceresiyle eşleştirilmiş bir giriş öğesidir. Bu desen, ekran okuyucuların görsel kullanıcı arayüzünü göremeyen kullanıcılara etkileşim davranışını, kullanılabilir seçenekleri ve geçerli seçimi doğru biçimde duyurmasını sağlar.

Sarmalayıcıda Birleşik Kutu Rolü

Girişi, role="combobox" özelliğine sahip bir div ile sarın. Bu, yardımcı teknolojilere giriş alanıyla ilişkili bir açılır liste bulunduğunu bildirir. Öneri listesinin o anda görünür mü yoksa gizli mi olduğunu ekran okuyuculara bildirmek için bu sarmalayıcıda aria-expanded={isOpen} özelliğini ayarlayın.

Girişin ARIA Özellikleri

Giriş öğesinin kendisi şu özelliklere sahip olmalıdır: aria-autocomplete="list" (açılır pencere bir öneri listesi içerir), aria-haspopup="listbox" (tıklamak veya yazmak bir liste kutusu açar), aria-expanded={isOpen} ve açılır liste öğesinin id değerini gösteren aria-controls="suggestion-list-id".

Etkin Alt Öğeyi Belirten ARIA Özelliği

Girişteki aria-activedescendant, o anda vurgulanan seçeneğin id değerini gösterir. selectedIndex değeri 0 olduğunda aria-activedescendant="option-0" ayarını yapın. Ekran okuyucular, gerçek odağı giriş alanından taşımadan hangi öğenin etkin olduğunu duyurmak için bunu kullanır. Hiçbir öğe seçilmediğinde, özelliği kaldırın veya boş bir dize olarak ayarlayın.

Öneri Listesi: Liste Kutusu Rolü

Açılır liste kapsayıcı öğesinde role="listbox" bulunmalı ve girişin aria-controls değeriyle eşleşen benzersiz bir id kullanılmalıdır. Bu rol, erişilebilirlik ağacına bu öğenin seçilebilir seçeneklerden oluşan bir liste olduğunu bildirir. Liste kutusu, girişteki aria-activedescendant aracılığıyla dolaylı olarak odak alır.

Her Öneri: Seçenek Rolü

Her öneri öğesinde role="option" ve option-0, option-1 gibi benzersiz bir id bulunmalıdır. O anda vurgulanan öğeyi belirtmek için aria-selected={index === selectedIndex} ekleyin. Kullanıcı ok tuşlarıyla gezinirken ekran okuyucular hem seçeneğin içeriğini hem de seçili olup olmadığını duyurur.

Ekran Okuyucu Duyurusu

Kullanıcı ArrowDown tuşuna bastığında ve aria-activedescendant değeri option-1 olarak güncellendiğinde, VoiceOver "React kancaları, 5 öğeden 2.si" gibi bir duyuru yapar. Ekran okuyucu, ARIA işaretlemesinden seçeneğin metnini ve listedeki konumunu otomatik olarak okur. Klavye ile gezinme için ek canlı bölgelere gerek yoktur.

VoiceOver ve NVDA ile Deneme

macOS üzerinde VoiceOver ile (açıp kapatmak için Cmd+F5 tuşlarına basın) ve Windows üzerinde NVDA ile (ücretsiz olarak indirilebilir) deneme yapın. Giriş alanına gidip yazmaya başlayın. Ekran okuyucunun birleşik kutu rolünü, bulunan sonuç sayısını ve ok tuşlarıyla ilerlerken her seçeneği duyurduğunu doğrulayın. Davranışı WAI-ARIA Yazım Uygulamaları Kılavuzu örnekleriyle karşılaştırın.

Eşzamansız Yükleme için Canlı Bölge

Öneriler eşzamansız olarak yüklendiğinde, aria-live="polite" ve aria-atomic="true" özelliklerine sahip, görsel olarak gizlenmiş bir div ekleyin. Yükleme tamamlandığında metin içeriğini "5 sonuç bulundu" veya "Sonuç bulunamadı" olarak güncelleyin. Ekran okuyucu, mevcut konuşma tamamlandıktan sonra bu mesajı duyurarak kullanıcıları sözlerini kesmeden bilgilendirir.

WAI-ARIA Yazım Uygulamaları Kılavuzu

w3.org/WAI/ARIA/apg adresindeki WAI-ARIA Yazım Uygulamaları Kılavuzu (APG), çalışan kod örnekleri ve ayrıntılı klavye etkileşimi belirtimleri içeren özel bir birleşik kutu deseni sayfasına sahiptir. Tam erişilebilirlik kurallarına uyduğunuzdan emin olmak için otomatik tamamlama, iletişim kutuları veya sekmeler gibi etkileşimli bileşenleri uygularken her zaman APG'ye başvurun.

ARIA Etiketi ve Yer Tutucu

Görünür bir etiket öğesi yoksa giriş alanına bir aria-label sağlayın: aria-label="Search suggestions". Etiketler için yalnızca placeholder özelliğine güvenmeyin; yer tutucular kullanıcı yazmaya başladığında kaybolur ve tüm ekran okuyucular tarafından tutarlı biçimde duyurulmaz. htmlFor içeren görünür bir label öğesi her zaman en iyi seçenektir.

Etkin Alt Öğeyi Belirten ARIA Özelliğinin Amacı

Otomatik tamamlama girişindeki aria-activedescendant özelliğinin amacı nedir?

Ders Özeti: Otomatik Tamamlama için Erişilebilirlik

Sarmalayıcıda role="combobox", giriş alanında aria-autocomplete="list", ayrıca giriş alanı ile öneri listesini ilişkilendirmek için aria-expanded, aria-controls ve aria-activedescendant kullanın. Her seçenekte role="option", benzersiz bir id ve aria-selected bulunmalıdır. Eşzamansız sonuç sayılarını duyurmak için bir aria-live bölgesi ekleyin.

Sıkça Sorulan Sorular

“Otomatik Tamamlama Bileşenlerinde Erişilebilirlik” dersi ücretsiz mi?

Evet — “Otomatik Tamamlama Bileşenlerinde Erişilebilirlik” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.

“Otomatik Tamamlama Bileşenlerinde Erişilebilirlik” dersinde ne öğreneceğim?

Bileşeni ekran okuyuculara uygun hâle getirmek için aria-autocomplete, aria-expanded, role=listbox ve role=option uygulayın React Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

React Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te React Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Otomatik Tamamlama Bileşenlerinde Erişilebilirlik” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu React Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her React Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Öneri Listeli Denetimli Girdi
  2. Öneri Listelerinde Klavye ile Gezinme
  3. Debounce ile Eş Zamanlı Olmayan Öneriler
  4. Otomatik Tamamlama Bileşenlerinde Erişilebilirlik
← React Academy Sayfasına Dön