Оповещение Javascript не может быть введено

1

есть ли способ заблокировать Enter Keyboard, когда появится окно предупреждения? Поэтому пользователю необходимо нажать Esc или нажать кнопку " Ok, чтобы удалить предупреждение.

<script>
alert('Hello');
</script>
  • 0
    Насколько я знаю, окно оповещения не настраивается, и вы не можете писать сценарии для взаимодействия с ним.
  • 0
    Нет. Предупреждение находится за пределами документа, и вы не можете добавить к нему обработку событий.
Показать ещё 1 комментарий
Теги:

1 ответ

1

Как указано в представленных мною комментариях, стандартное предупреждение 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> 

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"; 
    }
};

Первые 4 строки кода хранят ключ, который был нажат в переменную с именем "e".

Функция document.onkeypress начинает прослушивать, когда нажата клавиша. Переменная "e" передается в функцию и затем сохраняется в переменной с именем "ключ" для ясности.

Затем переменная "ключ" проверяется на число клавиш "esc" на клавиатуре, которое равно 27. Если "ключ" равен 27, чем мы запускаем некоторый код, если он не игнорирует нажатие клавиши.

Код, который мы запускаем, удаляет окно предупреждения, которое мы сделали.

Надеюсь, это поможет!

Ps Этот ответ не использует jQuery, но jQuery сделает его менее коротким, если вы уже имеете его в своем проекте.

  • 0
    благодарю вас! часть if key code == 27 - это то, что я сейчас ищу для своего оповещения
  • 0
    helo YAH спасает, ключ 27 сейчас не работает ... есть идеи почему?
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню