2016-01-11 4 views
0

Я создаю совместимый с экраном скринсейвер, который разрабатывается на угловых рамах. Страница занимает от 10 до 15 секунд до углового бутстрапа и загружает весь контент (используя ajax).Угловые Js и челюсти

Когда я запускаю JAWS 17 на своем SPA, Челюсти не могут читать страницу (я думаю, страница занимает время для рендеринга html), Jaws читает страницу как «Страница не имеет ссылок».

Пожалуйста, предложите любое решение, позволяющее JAWS дождаться загрузки веб-сайта или заставить JAWS перечитать страницу.

ответ

0

вы должны сначала прочитать wai-aria и проверить, поддерживает ли JAWS его.

+0

Спасибо, Да, поддержка челюстей wai-aria, и я тестировал SPA, добавив атрибут ARIA-LIVE, который работает неправильно. Мое понимание ARIA-LIVE заключается в том, что они используются для раздела, который обновляется динамически. Моя проблема в моем случае JAWS не может читать какой-либо контент (от заголовка до навигации) – user2435783

+0

Вы пытаетесь использовать [ngAria] (https://docs.angularjs.org/api/ngAria)? – rck6982

+0

Да, мы используем ngAria. ngAria в основном для внутреннего контента, когда мы выполняем любые действия, такие как щелчок, показать скрытые элементы. Как я сказал основные проблемы, JAWs не может читать содержимое страницы, когда оно загружается в браузере. Хотя JAWs читает контент (ссылки, текстовое поле, навигацию и т. Д.), Когда мы нажимаем вкладки и фокусируем движение по SPA. – user2435783

0

Чтобы решить проблему, я разработал обходной путь, который работал эффективно. Ниже приведены детали разрешения.

Создайте веб-страницу (или метод действия в приложении MVC), у которых время загрузки равно портальному (угловому приложению) времени загрузки +1 или 2 секунды.

Ссылка на эту страницу в iframe, этот iframe будет размещен на портале под любым тегом html.

Создайте директиву (угловую), позволяющую удалить внутренний html и применить эту директиву к тегу HTML, в котором есть iframe внутри.

Как это будет работать Челюсти не может асинхронно знать, когда угловые загружает содержимое портала, так он начинает читать его буфер и буфер не имеют содержимого портала из-за интенсивного использования директивы и динамического HTML.

Добавление iframe будет удерживать JAWs для чтения буфера, потому что он будет постоянно загружаться (справочная страница). Когда все содержимое загружается в браузере, директива будет выполняться последним и удаляет, что iframe и JAW начинают чтение буфера (содержимое портала). У этого достаточно данных портала для чтения.