如何在击中逃生时关闭模态弹出窗口?

use*_*100 11 jquery jquery-ui

我已经制作了一个模态框弹出功能,当有人在所有浏览器中点击转义键时,我想关闭这个模态弹出框.我已经将这个文件modal-window.min.js用于这些弹出窗口.

如何关闭这些以响应此键?

Sta*_*ble 19

$(document).keypress(function(e) { 
    if (e.keyCode === 27) { 
        $("#popdiv").fadeOut(500);
        //or
        window.close();
    } 
});
Run Code Online (Sandbox Code Playgroud)


Ram*_*zar 19

具有以下keydown功能:

$(document).keydown(function(event) { 
  if (event.keyCode == 27) { 
    $('#modal_id').hide();
  }
});
Run Code Online (Sandbox Code Playgroud)

注意:首选使用keydownEscape键,因为在某些浏览器中,keypress只有在键输出一个字符时才触发事件:)


Ale*_*ust 6

对于登陆此寻找非 jQuery 解决方案的人,这里是:

document.addEventListener('keydown', (event) => {
  if (event.key === 'Escape') {
    // close modal here
  }
})
Run Code Online (Sandbox Code Playgroud)