是否可以为整个网页设置按ENTER键的默认按钮?
我用Google搜索,我遇到了以下代码。但是我不确定这一行是什么意思var keycode = (event.keyCode ? event.keyCode : (event.which ? event.which : event.charCode));
所以我想在stackoverflow上发布这个问题。
感谢。
<script language="javascript">
$(document).ready(function () {
$("input").bind("keydown", function (event) {
var keycode = (event.keyCode ? event.keyCode : (event.which ? event.which : event.charCode));
if (keycode == 13) {
document.getElementById('btn').click();
return false;
} else {
return true;
}
});
});
</script>
答案 0 :(得分:1)
不同的浏览器/设备 1 支持获取密钥代码的不同属性。三元表达式与:
相同var keyCode;
if(event.keyCode) // if keyCode is supported get that #top-priority
keyCode = event.keyCode;
else if(event.which) // else, if .which is supported, get that
keyCode = event.which;
else // alas! nothing above is supported
keyCode = event.charCode; // we should take charCode
1设备例如EAN条形码阅读器有一个charCode of 13
由于其.keyCode
为0(假),因此第一个if条件失败。 Courtesy - MLeFevre
答案 1 :(得分:0)
使用JQuery(如果有选项)我会做
$(document).keyup(function(evt) {
if (evt.keyCode == 13) {
// do your thing
}
}
这适用于Chrome,FF,Safari和Opera。 还可以考虑使用各种检查,如@Gaurang Tandon的答案,以涵盖所有硬件规格。