Eventuali duplicati:
How to catch enter keypress on textarea but not shift+enter?Come posso rilevare il tasto Maiusc + in javascript?
Come posso rilevare shift + tasto giù in JavaScript?
Eventuali duplicati:
How to catch enter keypress on textarea but not shift+enter?Come posso rilevare il tasto Maiusc + in javascript?
Come posso rilevare shift + tasto giù in JavaScript?
var onkeydown = (function (ev) {
var key;
var isShift;
if (window.event) {
key = window.event.keyCode;
isShift = !!window.event.shiftKey; // typecast to boolean
} else {
key = ev.which;
isShift = !!ev.shiftKey;
}
if (isShift) {
switch (key) {
case 16: // ignore shift key
break;
default:
alert(key);
// do stuff here?
break;
}
}
});
Non c'è da meravigliarsi che la gente usi jQuery per questo. Amico, questo è un sacco di codice. –
Tutto questo codice non è più necessario (più). Si prega di vedere l'altra risposta. –
event.shiftKey
è un booleano. true
se il tasto Maiusc viene premuto, in caso contrario, false
. altKey
e ctrlKey
funzionano allo stesso modo.
Quindi, in pratica, è sufficiente rilevare il keydown normalmente con onkeydown
e verificare tali proprietà in base alle esigenze.
Penso che questo sia più informativo della risposta selezionata, in quanto descrive effettivamente il comportamento della funzionalità corretta, mentre l'OA presenta solo una serie di hack del browser per assicurarsi che questa funzionalità funzioni. – hoffmanc
Potresti aver usato quelle parole in più per dire a tutti quello che hai già provato. A proposito, rispondi alla tua domanda: http://stackoverflow.com/questions/6178431/how-to-catch-enter-keypress-on-textarea-but-not-shiftenter – Pablo
oh beh ... per quello che vale : http://jsfiddle.net/3M6Xt/ –
@rockinthesixstring eh, va bene. la risposta è fondamentalmente la fuori là: P –