Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript如何在键盘上使用onclick函数_Javascript_Onclick_Keyboard Events - Fatal编程技术网

Javascript如何在键盘上使用onclick函数

Javascript如何在键盘上使用onclick函数,javascript,onclick,keyboard-events,Javascript,Onclick,Keyboard Events,我希望这个问题的标题符合我在这里提出的问题 我有以下HTML和javascript代码: <button id="Z">Z</button> var btnZ = document.getElementById("Z"); btnZ.onclick = function() { // Some code Z var btnZ=document.getElementById(“Z”); btnZ.onclick=函数(){ //一些代码 好的,现在我想在用户按键盘上的

我希望这个问题的标题符合我在这里提出的问题

我有以下HTML和javascript代码:

<button id="Z">Z</button>

var btnZ = document.getElementById("Z");
btnZ.onclick = function() {
// Some code
Z
var btnZ=document.getElementById(“Z”);
btnZ.onclick=函数(){
//一些代码

好的,现在我想在用户按键盘上的“Z”键时执行btnZ.onclick函数。如何在不复制btnZ.onclick函数中的代码的情况下执行此操作?

您可以单独声明该函数,并在需要时引用它。例如

 var yourOnClickFunction =  function() {
                               // Some code
 btnZ.onclick = yourOnClickFunction;

如果您可以使用HTML5,那么您可以使用(但它将响应ALT+Z,而不仅仅是Z)

如果不能使用HTML5,则必须使用
键下事件。

使用此选项:

function clicked () {
    alert('clicked!');
    //some code
}
document.onkeydown = function (e) {
    var keyCode = e.keyCode;
    if(keyCode == 90) {
        clicked();
    }
};
btnZ.onclick = clicked;

您应该有一个执行代码的公共函数,但是有两个事件函数

function do() {
     //some code
}
btnZ.onclick = function(e) {
    do();
};
btnZ.onkeydown = function(e) {
    var keyCode = e.keyCode;

    if(keyCode === 90) do();
}

这仅在用户关注该元素时有效。

一种方法是触发其他元素的事件,如中所示

你好 clickButton=函数(){ 警报(“点击你好”) } document.getElementsByTagName(“按钮”)[0]。onclick=clickButton 向下键=功能(e){ 如果(e.keyCode==90) document.getElementsByTagName(“按钮”)[0]。单击() } document.onkeydown=keydown
如果使用JQuery,您可以使用函数

你好 $(“按钮”)。单击(函数(){ 警报(“点击你好”) }) $(文档)。按键(功能(e){ 如果(e.charCode==90) $(“按钮”)。触发器(“单击”) }) HTML

<button id="z">Z</button>

只需创建一个命名函数?OnClick是一个完整的鼠标单击(向下+释放)。键盘使用onKeyUp。我在手机上,输入完整的函数需要很长时间,所以请查找最新的方法gor keyup或keypress…谢谢,这对我有帮助如果你喜欢代码执行一次,你可以使用“onKeyUp”。我不知道onkeydown函数,但它真的很有用。谢谢@user3132718@LeeTaylor我知道学校并不总是这样很好。但是当我想链接一些html文档时,我应该使用哪个网站呢?——Mozilla的html/CSS/Javascript文档在质量和准确性上都要高得多。
<button >Hello</button>

$("button").click(function(){
  alert("Hello clicked")
})

$(document).keypress(function(e){
  if(e.charCode == 90)
    $("button").trigger("click")
})
<button id="z">Z</button>
document.onkeypress = function (e) { 
  e = e || window.event; 
  var charCode = e.charCode || e.keyCode, 
      character = String.fromCharCode(charCode); 

  if (character == 'z')
  alert(character);
};

document.getElementById('z').onclick = function (e){
    alert(document.getElementById('z').id)
}