İlk olarak, bu görevi tamamlamak için yalnızca yerel JavaScript kullanmak istiyorum.Anahtarda Javascript ile vurguluyu nasıl taklit edebilirim?
ı özel açılan yapmak duyuyorum diyelim ve HTML kodu şöyle tür görünüyor. CSS dosyasında
<div class="dropdown">
<span class="dropdown-label" style="display:block">Select a thing</span>
<ul class="dropdownItemContainer">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
<li>Item 6</li>
</ul>
</div>
Bunun yakın bir şey var:
ul.dropdownItemContainer li:hover {
background-color: #FF0000;
}
Evet, gerçekten hiçbir dropdownish davranış yoktur, ama aslında tartışmanın bu değil. Sorun şu ki bu açılır menü için klavye kontrolünü etkinleştirmek için iyi bir yol düşünemedim. İstenen sonuç şu şekildedir: Aşağı tuşuna bastığımda ilk seçenek vurgulanır; Tekrar basıyorum, ikinci seçenek vurgulanıyor ve böyle devam ediyor.
Bu noktada gördüğüm tek seçenek (sadece JS'yi incelemeye başladı), ul
'un tüm çocuklarını getirmektir, bir diziye yapıştırın ve JS yöntemleriyle arka plan rengini uygun bir şekilde atayın. Aşağı tuşa her basıldığında. Fare countrol için CSS açıklanan vurgulu davranışı: Öte yandan
Klavye navigasyon üzerinde bir örnek 'çok sık kullanır: odak '. –
@AlessandroVendruscolo true, ancak gerçekten veya düzenli kontrol elemanlarından başka hiçbir şeye odaklanamıyorum, değil mi? :) –
sadece jQuery çözümleri aklıma geliyor :( –