SORU
29 EYLÜL 2008, PAZARTESİ


Nasıl bir DİV için klavye odağı vereyim ve klavye olay işleyicileri eklemek?

Bir dikdörtgen bir DİV ile temsil tıklatın ve klavye bu DİV taşımak için kullanmak istiyorum nereden başvuru yapıyorum

Olay belge düzeyinde klavye olayları için dinleyici kullanmak yerine, belki de klavye odağını vererek DİV düzeyinde klavye olayları dinle, alabilir miyim?

İşte bu sorunun göstermek için basit bir örnek:

<html>
<head>
</head>
<body>

<div id="outer" style="background-color:#eeeeee;padding:10px">
outer

   <div id="inner" style="background-color:#bbbbbb;width:50%;margin:10px;padding:10px;">
   want to be able to focus this element and pick up keypresses
   </div>
</div>

<script language="Javascript">

function onClick()
{
    document.getElementById('inner').innerHTML="clicked";
    document.getElementById('inner').focus();

}

//this handler is never called
function onKeypressDiv()
{
    document.getElementById('inner').innerHTML="keypress on div";
}

function onKeypressDoc()
{
    document.getElementById('inner').innerHTML="keypress on doc";
}

//install event handlers
document.getElementById('inner').addEventListener("click", onClick, false);
document.getElementById('inner').addEventListener("keypress", onKeypressDiv, false);
document.addEventListener("keypress", onKeypressDoc, false);

</script>

</body>
</html>

Bu odak, ancak sonraki klavye veriyorum iç DİV tıklayarak olayları hep belge düzeyinde aldı, DİV düzey olay benim dinleyici.

Sadece klavye odağı uygulamaya özgü bir kavram uygulamak gerekiyor mu?

Ben sadece bu Firefox çalışmak gerekir eklemek gerekir.

CEVAP
29 EYLÜL 2008, PAZARTESİ


- Makale ekledim sıralanmış örneğin klavye olayları almaya neden hedef DİV için öznitelik

<div id="inner" tabindex="0">
    this div can now have focus and recieve keyboard events
</div>

Bilgi http://www.w3.org/WAI/GL/WCAG20/WD-WCAG20-TECHS/SCR29.html panoda

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • cyriak

    cyriak

    29 Mart 2006
  • Theodore Leaf

    Theodore Lea

    29 AĞUSTOS 2006
  • FusioNGamiing

    FusioNGamiin

    10 Temmuz 2007