Библиотека Axe-core предоставляет мощный набор инструментов для автоматизированного тестирования доступности веб-страниц. Подключение через CDN является одним из самых простых способов интеграции, не требующих установки дополнительных пакетов через npm или yarn.
Для использования Axe-core через CDN достаточно добавить тег
<script> в HTML-документ. Рекомендуется подключать
библиотеку в конце <body>, чтобы она загружалась
после всех элементов страницы:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Тестирование доступности</title>
</head>
<body>
<h1>Пример страницы</h1>
<button>Нажми меня</button>
<!-- Подключение Axe-core -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/axe-core/4.7.3/axe.min.js"></script>
<script>
// Инициализация проверки после загрузки страницы
window.addEventListener('load', () => {
axe.run(function(err, results) {
if (err) throw err;
console.log(results.violations);
});
});
</script>
</body>
</html>
Ключевые моменты:
Axe-core поддерживает гибкую конфигурацию. Через объект
axe.configure() можно:
Пример конфигурации:
axe.configure({
rules: [
{ id: 'color-contrast', enabled: true },
{ id: 'image-alt', enabled: false }
],
reporter: 'v2'
});
axe.run(document, function(err, results) {
if (err) throw err;
console.log(results.violations);
});
Особенности конфигурации:
rules — массив объектов с настройкой отдельных
проверок;reporter позволяет задать формат вывода (v2, v3, html,
json);axe.run(rootNode, options, callback).Подключение через CDN позволяет сразу использовать Axe-core для интерактивного анализа:
axe.run() в консоль.Пример использования:
axe.run(document.body, { runOnly: ['wcag2aa'] })
.then(results => console.table(results.violations))
.catch(err => console.error(err));
Объяснение параметров:
runOnly ограничивает проверку стандартами WCAG или
определёнными правилами;document.body указывает корневой элемент для
анализа;then и catch позволяют использовать
промисы для удобной обработки результатов.Подключение Axe-core через CDN обеспечивает быстрый старт для анализа доступности, предоставляя все основные возможности библиотеки без необходимости сложной настройки.