2012-07-29 18 views

cevap

10

biliyoruz: hepsi formu ile ilişkili, labelable elemanlar olarak kategorize edilir değil

Bazı unsurları. Bunlar, etiket elemanı ile ilişkilendirilebilen öğelerdir.

"düğmesi" "giriş" (type özelliği, gizli durumda değilse) "keygen" "metre" "çıkış" "ilerleme" "select" "textarea"

http://www.w3.org/TR/html5/forms.html#category-label

Ayrıca bkz: özellik için

başlık ilişkili olan bir şekilde kontrol belirtmek için belirlenebilir. Öznitelik belirtildiyse, özniteliğinin değeri, belgesinde etiket öğesiyle aynı Belge öğesinin kimliği olmalıdır. Öznitelik belirtilmişse ve belgesinde, Belge özniteliği için değerine eşit olan bir öğe vardır ve bu tür ilk öğe, saydam bir öğedir, daha sonra bu öğe etiket öğesinin etiketli denetimidür.

http://www.w3.org/TR/html5/the-label-element.html#attr-label-for

Soruyu sizce geçerli bir kullanım örneğini sunar. ARIA nitelikleri biçimlendirme daha erişilebilir hale gelmesine yardımcı olabilir gerçi, önerilen model böyle bir senaryo için ne olduğundan emin değilim:

https://developer.mozilla.org/en/Accessibility/ARIA/forms/Basic_form_hints https://developer.mozilla.org/Special:Tags?tag=ARIA

+0

genişletmek için simüle edebilirsiniz: [if bir form denetimi başvurmak gerekir etiket elemanın özellik için] (http://www.w3.org /TR/html-markup/label.html#label) – steveax

+0

Teşekkürler Tim, ilginç bir bul – Thomas

+0

@steveax Güncellenmiş bir bağlantınız var mı? –

2

Tim diyor doğal olarak bunu yapmak mümkün değildir belirtildiği gibi, Ancak javascript birazcık HTML5 spec gelen bu

jQuery(document).delegate('[for]','click',function(e){ 
    var targetEl = jQuery('#'+jQuery(this).attr('for')); 
    if(targetEl.is('div.your-custom-dropdown-class')) { //if targetEl is one of your dropdowns 
     e.preventDefault(); 
     targetEl.trigger('click'); //open the drop down 
    } 
}); 
İlgili konular