Как заставить окно браузера всегда быть сверху и в фокусе - PullRequest
2 голосов
/ 06 апреля 2009

Есть ли способ заставить окно браузера всегда быть сверху и в фокусе? Я работаю над проектом, для которого мне нужно, чтобы окно браузера было сверху и в фокусе все время, кроме случаев закрытия окна браузера. Я пробовал несколько вещей через javascript, но безуспешно удерживал окно в фокусе.

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

Ответы [ 5 ]

7 голосов
/ 06 апреля 2009

Вам потребуется установить приложение Windows на клиентском компьютере, что приведет к тому, что браузер окажется на вершине. Это единственный способ.

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

Редактировать: Если вы пишете тестовое приложение, вам, честно говоря, лучше просто установить разумный срок для каждого вопроса. пытаться помешать им искать ответы бесполезно. Что, если у них есть две машины рядом? Что делать, если рядом с ними есть приятель, который помогает с ответами. Вам придется использовать систему чести на этом.

2 голосов
/ 07 апреля 2009

Я прокомментировал вопрос, но понял, что это стоит опубликовать в качестве ответа ...

Найдите другое решение. Подумайте немного об этом. Если пользователь не смотрит ответы в другом окне / вкладке / браузере, каковы будут побочные эффекты этого? Обнаружьте эти побочные эффекты и оштрафуйте / заблокируйте в этих случаях.

Например, вы можете обнаружить событие blur на window и затем опросить активность (focus, click, mousemove, keypress и т. Д.), Чтобы определить время простоя для пользователя. Если пользователь «простаивает» достаточно долго, чтобы отправиться куда-нибудь, чтобы найти ответ, он, скорее всего, «обманывает». В противном случае вы можете просто наложить временные ограничения на вопросы и пропустить эти вопросы, если отведенное время закончится.

Вы не можете гарантировать, что ваш пользователь не "обманывает". Либо создайте «физические» правила теста таким образом, чтобы минимизировать вероятность «мошенничества», либо создайте сам тест таким образом, чтобы «мошенничество» было менее значимым. Не пытайтесь обойти встроенные средства защиты пользователей в браузерах, которые не позволяют пользователям работать с их браузером, как это было бы с любым другим приложением.

2 голосов
/ 06 апреля 2009

Это невозможно, поскольку фокус на уровне приложения обрабатывается операционной системой Windows.

Вам потребуется изменить операционную систему для достижения этой функциональности.

1 голос
/ 07 апреля 2009

Окно браузера принадлежит браузеру, а не вам. Не шути с этим.

Не делайте этого, если только вы не написали браузер.

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

0 голосов
/ 07 апреля 2009

JavaScript имеет возможности сделать это, но он отключен по умолчанию в большинстве современных веб-браузеров (и, как вы наверняка согласитесь, для этого была веская причина!)

...