使用html和javascript在鼠标单击和按键上调用相同的功能

时间:2014-11-07 18:39:53

标签: javascript html

我想在鼠标点击或按键(输入)中调用javascript中的相同功能。这是我在html中的代码,但它不能正常工作。我可以这样做吗?

<div class="C" onclick="Cfunc()" onKeyDown="if(keycode==13)Cfunc();">
  <p >C</p>
</div>

这是我的js代码:

function Cfunc() {
  var audio = document.getElementById("Caudio")
  audio.play();
}

2 个答案:

答案 0 :(得分:1)

我会在标记之外这样做:

// elements
var audio    = document.getElementById("Caudio")
var play_btn = document.querySelector('.C')

// event handlers
play_btn.addEventListener('click', function() {
  audio.play()
})
document.addEventListener('keydown', function (event) {
  if ( event.keyCode == 13 ) {
    audio.play()
  }
})

如果您不希望keydown事件绑定到整个文档,请使div可聚焦并相应地更改

答案 1 :(得分:0)

你可以这样做,使这项工作适用于

<div class="C" onclick="Cfunc()" onKeyDown="Cfunc();">
  <p >C</p>
</div>

这是我的js代码:

function Cfunc(e) {
  if(e.keycode && e.keycode!=13)
   return;
  var audio = document.getElementById("Caudio")
  audio.play();
}