簡體   English   中英

我應該使用JavaScript更新aria- *屬性嗎?

[英]Should I be updating aria-* attributes with JavaScript?

假設我有以下HTML代碼:

<!DOCTYPE html>
<html>
<head>
<style type="text/css">
p {
    display:none;
}
input:focus + p {
    display:block;
}
</style>
</head>
<body>
<input />
<p aria-hidden="true">This field should not exceed 200 characters.</p>
</body>
</html>

當我將鼠標光標放在input字段中時,將出現該段落。 但是,盡管可見,該段落仍具有aria-hidden="true"屬性。

在網絡的可訪問性方面,我要介紹的JavaScript代碼,將明確地切換aria-hidden之間truefalse取決於我的CSS規則是否顯示或隱藏段落標記?

我正在努力解決這些aria屬性的使用方式,以及它們是否暗示JavaScript開發人員需要添加其他代碼來更改HTML標記,從而以反映我的CSS描述的行為的方式來思考。

您的特定示例有些奇怪,但是總的來說,是的,應該使用javascript來更改aria屬性的值。 就像可以使用JS更改任何element屬性的值一樣。

如果您有一個自定義復選框,例如<span role='checkbox' aria-checked='false'> (*),那么當選中該復選框時,您需要JS將aria-checked的值從FALSE更改為TRUE。 (當然,反之亦然)。

(*)如果您有一個自定義復選框,那么您將擁有其他未在此處顯示的其他屬性,例如tabindex,鼠標和鍵盤處理程序等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM