到目前为止,我找到或尝试的任何东西都没有帮助或产生任何正常工作的东西。
以下是我的几十次尝试失败的例子:
<html>
<head>
<title>Keyboard Test</title>
<script type="text/javascript">
onkeydown=text
function test() {
var key=String.fromCharCode;
if (key=="a")
alert("Hello!");
}
</script>
</head>
</html>
有人可以告诉我如何正确地尝试这个以及它为什么有用吗?
答案 0 :(得分:0)
“onkeydown = text” - 这是一个错字吗?你是说“onkeydown = test”吗?
答案 1 :(得分:0)
以下示例主要针对您尝试做的事情,但方式完全不同:http://jsbin.com/usonoh/1/edit
HTML:
<input id="foo">
使用Javascript:
document.getElementById("foo").addEventListener("keydown", function (ev) {
if (ev.which === 'A'.charCodeAt(0)) {
alert("A!");
}
});
希望它非常简单,但它正在做的是获取ID为“foo”的HTML元素,将一个事件监听器(它只是一个传入的函数)添加到“keydown”事件,然后在监听器中本身我们检查刚刚在“foo”输入中按下的键是否为charcode 65(“a”键)。
通常,您应该在Javascript中附加事件侦听器,并且应该使用addEventListener方法而不是设置on *属性。
我强烈建议使用Mozilla Developer Network来查找DOM API信息;以下是此示例的相关页面:
https://developer.mozilla.org/en-US/docs/DOM/document.getElementById https://developer.mozilla.org/en-US/docs/DOM/element.addEventListener
答案 2 :(得分:0)
尝试this
document.onkeydown = function test(ev) {
var key = String.fromCharCode(ev.keyCode);
if (key === "A") {
alert("Hello!");
}
}