如果您收听具有此事件的对象,那么魔术就会发生,如果按下 e.shiftKey 则为真,因此您需要擦除“!”
top.addEventListener('keydown', function(e){
if(e.shiftKey) {
/* do nice stuff.. */
}
}, false);
同样适用于:e.altKey;e.ctrlKey;e.元密钥;
您的代码应如下所示:
$('#postBoxEditor').on("keydown",function(e){
if((e.keyCode == 13) && e.shiftKey) {
e.preventDefault();
}
});
希望就是这样!:)
但你想要的是。
<script>
var enterflag=false;
var shiftenterflag=false;
$(document).ready(function() {
$('#in').on('keydown',function(e){
if(e.keyCode==13) enterflag=true;
if(e.keyCode==16 && enterflag) {
shiftenterflag=true;
$('#report').show();
}
});
$('#in').on('keyup',function(e){
if(e.keyCode==16 && enterflag) $('#report').hide();
if(e.keyCode==13) {
enterflag=false;
shiftenterflag=false;
}
});
});
</script>
<label>press enter and shift while focus in input to show the magic</label>
<input type="text" id="in" value="press enter and shift" style="with:200px" />
<div id="report" style="display:none">test</div>
这会触发 enter+shift 但不会触发 shift+enter