Имитация нажатия клавиш с помощью Jquery

Можно ли смоделировать нажатие клавиши, когда я нажимаю div? Что-то вроде:

$("mydiv").click(function(){
 Presskey->F5
});

На самом деле клавиша, которую я пытаюсь смоделировать, - это F11, чтобы люди могли нажимать на div, и окно открывалось в полноэкранном режиме. Я искал это, и я знаю, что невозможно сделать окно полноэкранным без "разрешения" пользователя, но в этом случае он будет нажимать div, когда он нажимает клавишу. Дело в том, что не все знают о F11 (я знаю, что всегда мог поставить "Нажмите F11 для полноэкранного режима"). Спасибо'

4 ответа

Решение

Да, вы можете имитировать нажатие F11, но вы не можете имитировать то, что он делает, это встроенная функция браузера (так как она будет иметь эффект только в области виртуальной машины JavaScript), а не та, которая запускается JavaScript.

"Нажмите F11 для полноэкранного режима" - ваш лучший вариант, подумайте о проблемах безопасности, если вы можете вызвать любое поведение браузера из JavaScript, например Ctrl+S, так далее.

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

С этим связана проблема безопасности, так как некоторые вредоносные сценарии могут использовать его, чтобы использовать его как способ запутать пользователя и заставить его делать некоторые вещи, которые он не должен делать... или принуждать их к одному веб-сайту (помните, что большинство веб-пользователей не такие умные, а 70% из них просто глупы)

Вы не можете программно применять полноэкранный режим, а также с помощью нажатий клавиш имитировать действия, которые иначе не доступны через JavaScript.

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

Другие вопросы по тегам