Accessibility in EJ2 JavaScript Check box control
10 May 20234 minutes to read
The web accessibility makes web content and web applications more accessible for people with disabilities. It especially helps in dynamic content change and development of advanced user interface controls with AJAX, HTML, JavaScript, and related technologies. CheckBox provides built-in compliance with WAI-ARIA
specifications. WAI-ARIA
support is achieved through the attributes like aria-checked
and aria-disabled
. It helps the people with disabilities by providing information about the widget for assistive technology in the screen readers. CheckBox component contains the checkbox
role.
Properties | Functionality |
---|---|
role | Indicates the type of input element. |
aria-checked | Indicates whether the input is checked, unchecked, or represents mixture of checked and unchecked values. |
aria-disabled | Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable. |
Keyboard interaction
Keyboard shortcuts | Actions |
Space | When the checkbox has focus, pressing the Space key changes the state of the checkbox. |
ej.base.enableRipple(true);
//checked state.
var checkbox = new ej.buttons.CheckBox({ label: 'Checked State', checked: true });
checkbox.appendTo('#checkbox1');
//unchecked state.
checkbox = new ej.buttons.CheckBox({ label: 'Unchecked State' });
checkbox.appendTo('#checkbox2');
//indeterminate state.
checkbox = new ej.buttons.CheckBox({ label: 'Indeterminate State', indeterminate: true });
checkbox.appendTo('#checkbox3');
<!DOCTYPE html><html lang="en"><head>
<title>EJ2 CheckBox</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Typescript UI Controls">
<meta name="author" content="Syncfusion">
<link href="https://cdn.syncfusion.com/ej2/23.2.4/ej2-base/styles/material.css" rel="stylesheet">
<link href="https://cdn.syncfusion.com/ej2/23.2.4/ej2-buttons/styles/material.css" rel="stylesheet">
<link href="styles.css" rel="stylesheet">
<script src="https://cdn.syncfusion.com/ej2/23.2.4/dist/ej2.min.js" type="text/javascript"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id="container">
<ul>
<li><input type="checkbox" id="checkbox1"></li>
<li><input type="checkbox" id="checkbox2"></li>
<li><input type="checkbox" id="checkbox3"></li>
</ul>
</div>
<script>
var ele = document.getElementById('container');
if(ele) {
ele.style.visibility = "visible";
}
</script>
<script src="index.js" type="text/javascript"></script>
</body></html>
#container {
visibility: hidden;
}
#loader {
color: #008cff;
height: 40px;
width: 30%;
position: absolute;
top: 45%;
left: 45%;
}
.e-checkbox-wrapper {
margin-top: 18px;
}
li {
list-style: none;
}