.keypress on a DIV tag?

2019-01-24 09:25发布

问题:

Is there a way to get work .keypress on a div element like this?:

<html>
<body>

<script type="text/javascript">
<!--

$('#idtext').keypress(function(event) {
  var keyCode = event.keyCode;
  $('#idtext').text(function(i, text) {

   return text + String.fromCharCode(keyCode); 

  });

});

// -->
</script>

<div id="idtext"></div>

</body>
</html>

回答1:

Yes: you need to add a tabindex attribute to the <div> to allow it to receive the focus.

<div id="idtext" tabindex="1"></div>

Also, the property you want for the character code of the text entered in a keypress event is which, not keyCode.

Finally, the HTML comment tags inside the <script> element are unnecessary in all modern browsers.