【问题标题】:.keypress on a DIV tag?.keypress 在 DIV 标签上?
【发布时间】:2011-04-15 03:10:37
【问题描述】:

有没有办法让 .keypress 在这样的 div 元素上工作?:

<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>

【问题讨论】:

    标签: javascript jquery jquery-ui jquery-selectors jquery-events


    【解决方案1】:

    是的:您需要在&lt;div&gt; 中添加一个tabindex 属性以允许它接收焦点。

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

    此外,您希望在按键事件中输入的文本字符代码的属性是which,而不是keyCode

    最后,&lt;script&gt; 元素内的 HTML 注释标签在所有现代浏览器中都是不必要的。

    【讨论】:

    • 这个例子太复杂了,不能说这是我的建议不起作用。简体:jsbin.com/aqiza/7
    • @xRobot 你有错误将$('#cmd span'); 更改为$('#cmd div#mytext');jsbin.com/aqiza/13
    • 非常感谢tabindex 的技巧。我永远也想不通。
    猜你喜欢
    • 1970-01-01
    • 2018-01-05
    • 2011-03-04
    • 2016-07-19
    • 1970-01-01
    • 1970-01-01
    • 2015-02-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多