Javascript-有选择地禁用向下键

Javascript-有选择地禁用向下键,javascript,keydown,Javascript,Keydown,我的应用程序有一个图像调色板。我使用键盘快捷键移动下一个和上一个图像。代码如下: window.addEventListener('keydown', function(e) { if (e.which == 37 || e.which == 65) { beforeAfterImages(1); gtfval(); } if(e.which == 39 || e.which == 68) { beforeAfterImages(2); gtfval

我的应用程序有一个图像调色板。我使用键盘快捷键移动下一个和上一个图像。代码如下:

window.addEventListener('keydown', function(e) {
  if (e.which == 37 || e.which == 65) {
    beforeAfterImages(1);
    gtfval();
  }

  if(e.which == 39 || e.which == 68) {
    beforeAfterImages(2);
    gtfval();
  }

})
在同一页中,我有一个按钮,可以打开一个模式窗口。模式窗口具有文本输入字段。在文本输入过程中,当我按a或d时,模式后面的图像调色板会一直移动。我可以在打开模式窗口时禁用按键功能吗。我尝试了以下方法:

$('#myModal').click(function() {
  window.addEventListener('keydown', function(e) {
  if (e.which == 37 || e.which == 65) {
    return false;
  }

  if(e.which == 39 || e.which == 68) {
    return false;
  }

})
});

打开模式时,可以编辑变量,如var isModalOpen。然后检查用户每次按键时:

window.addEventListener'keydown',函数E{ ifmodalIsOpen return;//此 如果e.which==37 | | e.which==65{ 前后图像1; gtfval; } ife.which==39 | e.which==68{ 前后图像2; gtfval; } }
您可以检查模态是否每次都处于打开状态,或者在模态打开时检查模态是否处于打开状态,然后在模态关闭时重新创建模态。