无法输入Javascript警报

无法输入Javascript警报,javascript,Javascript,当出现警报框时,是否有任何方法阻止进入键盘?因此,用户需要按Esc键或单击Ok按钮删除警报 <script> alert('Hello'); </script> 警惕(“你好”); 如我前面的评论所述,标准javascript警报: alert("hello world!"); 是由浏览器在javascript控件范围之外处理、设置样式和执行的功能 也就是说,通过制作一个自定义弹出框,您可以相当轻松地完成这项工作 我不打算详细介绍样式设置,但下面是一些代码,您可以在

当出现警报框时,是否有任何方法阻止
进入
键盘?因此,用户需要按Esc键或单击
Ok
按钮删除警报

<script>
alert('Hello');
</script>

警惕(“你好”);

如我前面的评论所述,标准javascript警报:

alert("hello world!");
是由浏览器在javascript控件范围之外处理、设置样式和执行的功能

也就是说,通过制作一个自定义弹出框,您可以相当轻松地完成这项工作

我不打算详细介绍样式设置,但下面是一些代码,您可以在这些代码的基础上构建样式化框:

<div id="alertBox" style="position:absolute;height:100%;width:100%;z-index:9999;background:white">
  <div id="alertText" style="position:relative;text-align:center;top:45%">
    You must press "esc" to escape!
  </div>
</div> 
代码的前4行存储了被压入变量“e”的按键

按下某个键时,document.onkeypress函数开始侦听。“e”变量被传递到函数中,然后保存到名为“key”的变量中,以便于说明

然后根据键盘上的“esc”键编号27测试“key”变量。如果“key”等于27,我们就运行一些代码,如果不等于27,我们就忽略按键

我们在这里运行的代码删除了我们创建的警报框

我希望这有帮助


另外,这个答案不使用jQuery,但是如果您的项目中已经有了jQuery,那么jQuery将减少代码量。

据我所知,警报框是不可配置的,您无法编写脚本与之交互。否。警报在文档外部,您无法向其添加任何事件处理。唯一的方法是使用jquery,对吗?创建自定义警报?谢谢!
的一部分,如果key code==27
是我现在搜索警报的内容Helo YAHsaves,key 27现在不起作用。。。知道为什么吗?你必须给我一些你也应用了这个的代码让我明白为什么。如果我将答案中提供的html和javascript复制到一个文档中,它就会工作。所以这取决于你如何理解和应用这些代码。
function code(e) {
  e = e || window.event;
  return(e.keyCode || e.which);
}

document.onkeypress = function(e){
    var key = code(e);
    if(key == 27){
      //run some code, they pressed the esc key
      document.getElementById('alertBox').style.display = "none"; 
    }
};