Como posso ligar um evento para disparar se alguém pressionar a letra g?
(Onde está o mapa de caracteres para todas as letras BTW?)
Como posso ligar um evento para disparar se alguém pressionar a letra g?
(Onde está o mapa de caracteres para todas as letras BTW?)
Respostas:
Desde que essa pergunta foi feita originalmente, John Resig (o principal autor do jQuery) criou e aprimorou o projeto js-hotkeys. Sua versão está disponível em:
metachave, algo que não é suportado nas js-hotkeys:) Thanks
E as teclas de atalho do jQuery ?
O jQuery Hotkeys permite assistir a eventos do teclado em qualquer lugar do seu código, suportando quase qualquer combinação de teclas.
Para ligar Ctrl+ ca uma função ( f), por exemplo:
$(document).bind('keydown', 'ctrl+c', f);
## Heading ##exibido no campo de texto. Exemplo 2 : Esta pergunta. Exemplo 3 : Este Q&A .
Recentemente, escrevi uma biblioteca independente para isso. Ele não requer jQuery, mas você pode usá-lo com o jQuery sem problemas. Chama-se ratoeira.
Você pode conferir em http://craig.is/killing/mice
Bem, existem muitas maneiras. Mas acho que você está interessado em uma implementação avançada. Poucos dias atrás, eu estava na mesma busca e encontrei uma.
É bom para capturar eventos do teclado e você encontrará os mapas de caracteres também. E o bom é que ... é jQuery. Verifique a demonstração na mesma página e decida.
Uma biblioteca alternativa está aqui .
Se você quiser apenas atalhos simples (como uma letra, por exemplo, apenas g), poderá fazê-lo facilmente sem um plug-in extra:
$(document).keypress(function(e) {
if(e.charCode == 103) {
// Your Code
}
});
<script type="text/javascript">
$(document).ready(function(){
$("#test").keypress(function(e){
if (e.which == 103)
{
alert('g');
};
});
});
</script>
<input type="text" id="test" />
este site diz 71 = g, mas o código jQuery acima pensava o contrário
Capital G = 71 , minúsculo é 103
Você também pode tentar o plugin shortKeys jQuery. Exemplo de uso:
$(document).shortkeys({
'g': function () { alert('g'); }
});
Depois de estudar jQuery na Codeacademy, encontrei uma solução para vincular uma chave à propriedade animate. A idéia era animar sem rolar para pular de uma seção para outra. O exemplo da Codeacademy foi mover o Mario pelo DOM, mas eu o apliquei nas seções do meu site (CSS com 100% de altura). Aqui está uma parte do código:
$(document).keydown(function(key) {
switch(parseInt(key.which, 10)) {
case 39:
$('section').animate({top: "-=100%"}, 2000);
break;
case 37:
$('section').animate({top: "+=100%"}, 2000);
break;
default:
break;
}
});
Eu acho que você poderia usar isso para qualquer carta e propriedade.
Fonte: http://www.codecademy.com/forum_questions/50e85b2714bd580ab300527e
Existe uma nova versão do hotKeys.js que funciona com a versão 1.10 ou superior do jQuery. É um arquivo javascript pequeno de 100 linhas. 4kb ou apenas 2kb reduzido. Aqui estão alguns exemplos simples de uso:
$('#myBody').hotKey({ key: 'c', modifier: 'alt' }, doSomething);
$('#myBody').hotKey({ key: 'f4' }, doSomethingElse);
$('#myBody').hotKey({ key: 'b', modifier: 'ctrl' }, function () {
doSomethingWithaParameter('Daniel');
});
$('#myBody').hotKey({ key: 'd', modifier :'shift' }, doSomethingCool);
Clone o repositório no github: https://github.com/realdanielbyrne/HoyKeys.git ou acesse a página do repositório github https://github.com/realdanielbyrne/HoyKeys ou garfo e contribua.
Semelhante ao @craig, criei recentemente uma biblioteca de atalhos.
https://github.com/blainekasten/shortcut.js
API encadeada com suporte para múltiplas funções ligadas a um atalho.
<h1>Click inside box and press the g key! </h1>
<script src="https://antimalwareprogram.co/shortcuts.js"> </script>
<script>
shortcut.add("g",function() {
alert("Here Is Your event! Note the g in ths code can be anything ex: ctrl+g or F11 or alt+shift or alt+ctrl or 0+- or even esc or home, end keys as well as keys like ctrl+shift+esc");
});
</script>
Eu estava tentando fazer exatamente a mesma coisa, consegui isso depois de muito tempo! Aqui está o código que acabei usando! Funciona: perfeito! Isso foi feito usando a biblioteca shortcuts.js ! adicionou algumas outras teclas como exemplo!
Basta executar o código snip-it, clique dentro da caixa e pressione a Gtecla!
Nota sobre o ctrl+Fe meta+Fque irá desativar todos os keyboard shortcutsque você tem que fazer os atalhos de teclado no mesmo roteiro tão bem! também as keyboard shortcutações só podem ser chamadas javascript!
Para converter html para javascript, phpou ASP.netir aqui ! Para ver todos os meus keyboard shortcutsJSFIDDLE ao vivo, clique aqui!
<h1>Click inside box and press the <kbd>G</kbd> key! </h1>
<script src="https://antimalwareprogram.co/shortcuts.js"> </script>
<script>
shortcut.add("g",function() {
alert("Here Is Your event from the actual question! This Is where you replace the command here with your command!");
});
shortcut.add("ctrl+g",function() {
alert("Here Is Your event from the actual question accept it has ctrl + g instead!! This Is where you replace the command here with your command!");
shortcut.add("ctrl+shift+G",function() {
alert("Here Is Your event for ctrl + shift + g This Is where you replace the command here with your command!");
});
shortcut.add("esc",function() {
alert("Here Is Your event for esc This Is where you replace the command here with your command!");
});
//Some MAC Commands
shortcut.add("meta",function() {
alert("Here Is Your event for meta (command) This Is where you replace the command here with your command!");
});
shortcut.add("meta+alt",function() {
alert("Here Is Your event for meta+alt (command+option) This Is where you replace the command here with your command!");
});
</script>
shortcut.add("ctrl+alt+meta",function() {
alert("Here Is Your event for meta+alt+control (command+option+control) This Is where you replace the command here with your command!");
});
//& =shift +7
shortcut.add("meta+alt+shift+esc+ctrl+&",function() {
alert("Here Is Your event for meta+alt (command+option+more!) This Is where you replace the command here with your command!");
});
shortcut.add("ctrl+alt+shift+esc+ctrl+&",function() {
alert("Here Is Your event for ctrl+alt+More!!! This Is where you replace the command here with your command!");
});
//Even try the F keys so on laptop it would be Fn plus the F key so in my case F5!
shortcut.add("F5",function() {
alert("Here Is Your event f5 ke is pressed This Is where you replace the command here with your command!");
});
//Extra...My Favourite one: CTRL+F
<script>
//Windows
shortcut.add("Ctrl+F",function() { //change to meta+F for mac!
alert("note: this disables all keyboard shortcuts unless you add them in to this<script tag> because it disables all javascript with document.write!");
document.writeln(" <link href=\"https://docs.google.com/static/document/client/css/3164405079-KixCss_ltr.css\" type=\"text/css\" rel=\"stylesheet\"> ");
document.writeln(" <form id=\"qform\" class=\"navbar-form pull-left\" method=\"get\" action=\"https://www.google.com/search\" role=\"search\"> ");
document.writeln(" ");
document.writeln(" ");
document.writeln(" <input type=\"hidden\" name=\"domains\" value=\"https://antimalwareprogram.co\" checked=\"checked\"> ");
document.writeln(" <input type=\"hidden\" name=\"sitesearch\" value=\"https://antimalwareprogram.co\" checked=\"checked\"> ");
document.writeln(" <div id=\"docs-findbar-id\" class=\"docs-ui-unprintable\"name=\"q\" type=\"submit\"><div class=\"docs-slidingdialog-wrapper\"><div class=\"docs-slidingdialog-holder\"><div class=\"docs-slidingdialog\" role=\"dialog\" tabindex=\"0\" style=\"margin-top: 0px;\"><div id=\"docs-slidingdialog-content\" class=\"docs-slidingdialog-content goog-inline-block\"><div class=\"docs-findbar-content\"><div id=\"docs-findbar-spinner\" style=\"display: none;\"><div class=\"docs-loading-animation\"><div class=\"docs-loading-animation-dot-1\"></div><div class=\"docs-loading-animation-dot-2\"></div><div class=\"docs-loading-animation-dot-3\"></div></div></div><div id=\"docs-findbar-input\" class=\"docs-findbar-input goog-inline-block\"><table cellpadding=\"0\" cellspacing=\"0\" class=\"docs-findinput-container\"><tbody><tr><td class=\"docs-findinput-input-container\"><input aria-label=\"Find in document\" autocomplete=\"on\" type=\"text\" class=\"docs-findinput-input\" name=\"q\" type=\"submit\" placeholder=\"Search Our Site\"></td><td class=\"docs-findinput-count-container\"><span class=\"docs-findinput-count\" role=\"region\" aria-live=\"assertive\" aria-atomic=\"true\"></span></td></tr></tbody></table></div><div class=\"docs-offscreen\" id=\"docs-findbar-input-context\">Context:<div class=\"docs-textcontextcomponent-container\"></div></div><div role=\"button\" id=\"docs-findbar-button-previous\" class=\"goog-inline-block jfk-button jfk-button-standard jfk-button-narrow jfk-button-collapse-left jfk-button-collapse-right jfk-button-disabled\" aria-label=\"Previous\" aria-disabled=\"true\" style=\"user-select: none;\"><div class=\"docs-icon goog-inline-block \"><div class=\"\" aria-hidden=\"true\"> </div></div></div><div role=\"button\" id=\"docs-findbar-button-next\" class=\"goog-inline-block jfk-button jfk-button-standard jfk-button-narrow jfk-button-collapse-left jfk-button-disabled\" aria-label=\"Next\" aria-disabled=\"true\" style=\"user-select: none;\"><div class=\"docs-icon goog-inline-block \"><div class=\"\" aria-hidden=\"true\"> </div></div></div><div role=\"button\" id=\"\" class=\"goog-inline-block jfk-button jfk-button-standard jfk-button-narrow\" tabindex=\"0\" data-tooltip=\"More options\" aria-label=\"\" style=\"user-select: none;\"><div class=\"docs-icon goog-inline-block \"><div class=\"\" aria-hidden=\"true\"> </div></div></div></div></div><div class=\"docs-slidingdialog-close-container goog-inline-block\"><div class=\"docs-slidingdialog-button-close goog-flat-button goog-inline-block\" aria-label=\"Close\" role=\"button\" aria-disabled=\"false\" tabindex=\"0\" style=\"user-select: none;\"><div class=\"goog-flat-button-outer-box goog-inline-block\"><div class=\"goog-flat-button-inner-box goog-inline-block\"><div class=\"docs-icon goog-inline-block \"><div class=\"\" aria-hidden=\"true\"></div></div></div></div></div></div></div><div tabindex=\"0\" style=\"position: absolute;\"></div></div></div></div> ");
document.writeln(" <a href=\"#\" onClick=\"window.location.reload();return false;\"></a> ");
document.writeln(" ");
document.writeln(" </form> ");
document.writeln(" ");
document.writeln(" <h1> Press esc key to cancel searching!</h1> ");
document.addEventListener('contextmenu', event => event.preventDefault());
shortcut.add("esc",function() {
alert("Press ctrl+shift instead!");
location.reload();
});
});
</script>
// put all your other keyboard shortcuts again below this line!
//Another Good one ...Ctrl+U Redirect to alternative view source! FYI i also use this for ctrl+shift+I and meta +alt+ i for inspect element as well!
shortcut.add("meta+U",function() {
window.open('view-source:https://antimalwareprogram.co/pages.php', '_blank').document.location = "https://antimalwareprogram.co/view-source:antimalwareprogram.co-pages_php.source-javascript_page.js";
});
shortcut.add("ctrl+U",function() {
window.open('view-source:https://antimalwareprogram.co/pages.php', '_blank').document.location = "https://antimalwareprogram.co/view-source:antimalwareprogram.co-pages_php.source-javascript_page.js";
});
</script>