Я создаю веб-сайт службы чтения для слепых и слабовидящих и использую JavaScript (с jQuery) для печати некоторых на некоторые страницы после загрузки.
Будет ли программа чтения с экрана читать содержимое, которое печатается на странице с помощью jquery после загрузки страницы?
С этой страницы - «Как правило, [программы чтения с экрана] получают доступ к DOM (объектной модели документа ), и они используют API-интерфейсы браузера (интерфейсы прикладного программирования) для получения необходимой информации ».
и мы знаем, что jQuery - это библиотека для работы с DOM.
Возникает вопрос ... берут ли программы чтения с экрана копию всей модели DOM, а затем разбирают ее и читают? Или они читают DOM, тот самый, над которым работает jQuery?
Вот пример одной из страниц, на которой я использую JavaScript. Он использует функцию, которая определяет, какую программу мы проигрываем в эфире, а затем печатает название программы и ссылку для ее прослушивания.
<div id="now-playing-div"></div>
<script>
// invoke the audio-reader javascript library
$( document ).ready( function() {
var callback = nowPlaying; // catalog, schedule, podcasts, archive or nowPlaying
var selector = '#now-playing-div';
makeAudioReaderPage(callback, selector);
});
</script>
Итак, как вы можете видеть, если программа чтения с экрана не читает то, что javascript / jquery печатает в # now-plays-div, тогда она ничего не читает. Затем мы начали получать несколько электронных писем от сбитых с толку слушателей, которые задавались вопросом, что случилось со ссылкой «Сейчас играет».
Итак, сегодня утром я добавил это:
<div id='no-js'>Please enable JavaScript to receive this content.</div>
<script>
$( document ).ready( function() {
$('#no-js').toggle();
});
</script>
Но если проблема не в том, что необходимо включить JavaScript (недавний опрос показывает, что 99% программ чтения с экрана у пользователей включен JavaScript), проблема не решена и усугубляется тем, что теперь пользователь программы чтения с экрана может подумать, что JavaScript не включен.
Что делать??