如何删除删除键上的突出显示

时间:2019-09-15 17:12:58

标签: jquery html

我有一个已创建的搜索突出显示,但是由于某些原因,当按下退格键或Delete键时,它没有删除搜索突出显示。当按下“ Enter”键时,我能够使该事件起作用,但是由于某些原因,当按下Delete或Backspace键时,该事件不起作用。下面是我的代码:

<script>
$input.keypress("input", function(e) {
if (e.keyCode === 13) {  
var searchVal = this.value;
$content.unmark({
  done: function(totalMatches) {
    $content.mark(searchVal, {
      separateWordSearch: false,
      acrossElements: true,
      done: function(totalMatches) {
        $results = $content.find("mark");
        currentIndex = 0;
        jumpTo();

            //tag.addClass('active');
        totalCount=totalMatches;
            if (totalMatches) {

          variableCounter=1;
          $(".kwt-count").html(variableCounter+ " of " +totalMatches+" Matches");
            }
        else
        {
           $(".kwt-count").html(" Matches");
        }

      }
    });
  }
});
}
}); 

  /**
   * Clears the search
   */
  $clearBtn.keypress("click", function(e) {
    if (e.keyCode === 8 || e.keyCode === 46) {
    $content.unmark();
    $input.val("").focus();
    }
  });
</script>

我在此处创建了代码的代码笔:https://codepen.io/dude12go8/pen/PoYbdXd

我不确定我在做什么错。预先谢谢你

1 个答案:

答案 0 :(得分:1)

仅当您按下Enter键时,您的代码才会运行。

退格和删除的键码为468。更新您的条件以同时考虑以下因素:

if (e.keyCode === 13 || e.keyCode === 46 || e.keyCode === 8)