【问题标题】:KeyPress or KeyDown event not getting buind with html elementKeyPress 或 KeyDown 事件未与 html 元素绑定
【发布时间】:2015-05-04 07:14:04
【问题描述】:

当我们按下任何没有被触发的键事件时。

<html>
  <body>
    <div id="myP" contentEditable="true">
        This is a paragraph. you can edit me, i am editable.
        <span contenteditable="false" class="go" id="go">
            <strong >This is strong thing</strong>
        </span> after strong
    </div>
  </body>
</html>

//脚本部分

$("#go").keydown(function() {
  debugger;
  alert( "Handler for .keydown() called." );
});

当我们设置 contentEditable = true 时,我们可以编辑该元素的内容,在我的情况下,我在 div 中有跨度,我想在退格键按下时删除该跨度。但它让我导航到上一页。表示它正在根据历史记录将我重定向到上一页。

【问题讨论】:

标签: jquery html


【解决方案1】:

我的猜测是你应该考虑到 .keydown 如果你在输入中按下一个键就会被触发。

<input contenteditable="false" class="go" id="go">

如果将处理程序附加到 body 而不是 span,则可以监听所有事件:

$("body").keydown(function() {
  debugger;
  alert( "Handler for .keydown() called." );
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-23
    • 1970-01-01
    相关资源
    最近更新 更多