admin管理员组

文章数量:1189174

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>

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>
Share Improve this question edited Sep 14, 2019 at 10:16 Brian Tompsett - 汤莱恩 5,88372 gold badges61 silver badges133 bronze badges asked Sep 21, 2010 at 10:20 xRobotxRobot 26.6k72 gold badges191 silver badges316 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 29

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.

本文标签: javascriptkeypress on a DIV tagStack Overflow