Используя PHP, JS или HTML (или что-то подобное), как я могу захватить ключевые слова? Например, если пользователь нажимает ctrl + f или, возможно, даже просто f, произойдет определенная функция.
++++++++++++++++++++++++++++++++ EDIT ++++++++++++ Хорошо, так это правильно, потому что я не могу заставить его работать. И я прошу прощения за мой n00bness, это простой вопрос, новый для jQuery и все еще более узнаваемый о JS.
<script> var element = document.getElementById('capture'); element.onkeypress = function(e) { var ev = e || event; if(ev.keyCode == 70) { alert("hello"); } } </script> <div id="capture"> Hello, Testing 123 </div>
++++++++++++++++ EDIT ++++++++++++++++++
Вот и все, но я не могу заставить его работать:
<link rel="icon" href="favicon.ico" type="image/x-icon"> <style> * { margin: 0px } div { height: 250px; width: 630px; overflow: hidden; vertical-align: top; position: relative; background-color: #999; } iframe { position: absolute; left: -50px; top: -130px; } </style> <script> document.getElementsByTagName('body')[0].onkeyup = function(e) { var ev = e || event; if(ev.keyCode == 70 && ev.ctrlKey) { //control+f alert("hello"); } } </script> <div id="capture"> Hello, Testing 123<!--<iframe src="http://www.pandora.com/" scrolling="no" width="1000" height="515"frameborder="0"></iframe>--> </div>
+++ +++ EDIT
Спасибо Джейкобу, я подумал, что это исправлено, но когда я попробовал его в FF и IE (в настоящее время используется хром, который работал), это не сработало. Этот скрипт будет только для личной страницы, которую я только увижу, так что это не самая большая сделка, но для будущей ссылки я просто хотел бы знать, почему это не работает ни в IE, ни в FF.
Конечно, единственный способ сделать это будет через JavaScript, и вы сделаете так вот так:
window.onload = function() { document.getElementsByTagName('body')[0].onkeyup = function(e) { var ev = e || event; if(ev.keyCode == 70) {//&& ev.ctrlKey) { //do something... } } };
Чтобы узнать конкретный код ключа, который вы хотите, см. Эту статью: http://www.webonweboff.com/tips/js/event_key_codes.aspx
Пример jsFiddle
Вы ищете события javascript, связанные с нажатиями клавиш. Здесь есть некоторая раздражающая несовместимость браузера, поэтому вам лучше использовать библиотеку JS, такую как jQuery, где вы можете использовать метод jQuery keypress (), но вы можете получить нужные данные из события javascript onkeypress.
Использование jQuery:
Вы можете сделать это, используя jQuery Keydown
Хорошая статья о захвате различных ключевых событий:
Работа с событиями в jQuery
РЕДАКТИРОВАТЬ:
JavaScript
Вот хорошие статьи, чтобы сделать это в javascript с хорошим DEMO:
Вам лучше захватить все ключи в окне, а не захватывать нажатия клавиш на конкретном элементе, например, на другие ответы.
поэтому используя собственный javascript:
window.onload = function (){ eventHandler = function (e){ if (e.keyCode == 70 && e.ctrlKey) { //do stuff //console.log(e); } } window.addEventListener('keydown', eventHandler, false); }
используя JQuery:
$(document).ready(function(){ $(window).keydown(function (e) { if (e.keyCode == 70 && e.ctrlKey) { //do stuff } }); });