В Angular, как запретить пользователю переходить с текущей вкладки? - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть приложение для экзамена, в котором мы хотели бы запретить пользователям изменять вкладки или открывать новые вкладки во время экзамена в качестве меры безопасности. Можете ли вы предложить способы достичь того же?

Ответы [ 3 ]

0 голосов
/ 28 апреля 2020

Не думаю, что можно избежать открытия новых вкладок или windows. Тем не менее, вы можете проверить, имеет ли ваше приложение фокус на пользователя.

Подробный ответ об этой теме c и совместимости браузера здесь Есть ли способ определить, не активно ли окно браузера в данный момент?

0 голосов
/ 28 апреля 2020

Этого можно достичь, создав настольное приложение с браузером. Не так сложно, как может показаться, но для этого нужен другой технический стек. Кроме того, это, очевидно, требует установки на клиентах, что может оказаться невозможным в вашем случае использования. Один из многих вариантов будет:

  • Создать приложение WPF
  • Принудительно удерживать его сверху, т.е. WPF всегда сверху
  • Добавить Chromium в качестве веб-браузера: Chromium
  • Реализовать некоторое пользовательское поведение, например, открыть тестовую страницу при запуске и т. Д. c.

Предполагается, что технология стек известен, я бы оценил, что это можно сделать за пару часов, включая тестирование. Решение также дает вам дополнительный контроль, например, над кэшированием браузера, который вы можете отключить ...

0 голосов
/ 28 апреля 2020

Я не думаю, что это возможно, и ученики в любом случае могут установить другие веб-браузеры или использовать смартфон, планшет, другой компьютер ... для просмотра веб-страниц.

...