首页 > 解决方案 > 按下 CTRL、SHIFT 等时,按键功能仍会触发淡入淡出

问题描述

我有一个加载覆盖,我希望它用 CTRL 和 SHIFT 等触发 NOT。我不知道为什么会发生这种情况。当我 ALT-TAB 回到网站时它也会触发。这不是我想看到的,也不是客户。此外,当我点击 DELETE 时,它会触发覆盖。只有当输入为空时才可以。

另外我注意到,如果我将注意力集中在另一个搜索栏内,它也会在我在#keywords输入内搜索后触发覆盖效果。

    $("#keywords").keypress(function(){
// Show loading overlay when ajax request starts
$( document ).ajaxStart(function() {
$('.loading-overlay').fadeIn("fast");
  // $('.loading-overlay').show();
});

// Hide loading overlay when ajax request completes
$( document ).ajaxStop(function() {
$('.loading-overlay').fadeOut("fast");
  // $('.loading-overlay').hide();
});
});

这里出了什么问题?

谢谢你的时间。

标签: jquerykeypressfading

解决方案


使用以下代码修复它:

      if($('#keywords').val().length > 0) {
      $('.loading-overlay').fadeIn("fast");
    } else {
        $('.loading-overlay').hide();
    }

如果输入长度大于零,它将淡入淡出,如果长度为零(否则),它将隐藏。

我把它放在 AJAX 里面beforeSend: function () {


推荐阅读