到目前为止,我发现了许多不同的文章,但它们似乎都有相互矛盾的建议以及与不同浏览器的不同级别的兼容性。一切都很头痛。是否有一种无忧无虑的方法来解析用户在canvas元素中的击键?
即使是这样的用于禁用快捷键的片段也不适用于所有浏览器。
if(e.preventDefault) // non-IE browsers
e.preventDefault();
else // IE Only
e.returnValue = false;
现在我正在使用
document.addEventListener('keypress', KeyPressed, true);
和
var keyCode = String.fromCharCode(e.charCode);
它在Firefox中运行良好,但在其他任何地方都没有。
我可能最终会让它工作但是有没有一个无忧无虑的方式去做而不拔掉我的头发?看起来奇怪的是,这种看似常见的功能很难实现。谢谢!
答案 0 :(得分:0)
“没有把我所有的头发拉出来,有没有一个无忧无虑的方式做到这一点?” 是啊!如果您使用jQuery,则可以。 因为jQuery可以让你的生活更轻松,也可以跨浏览器工作。
只需将其添加到您的代码
即可<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(document).keypress(function(event){
if (event.which == 13)
alert("You pressed the Enter Key");
});
});
</script>