Как включить обратно window.alert в Chrome на localhost

Пройдите тест, узнайте какой профессии подходите

Я предпочитаю
0%
Работать самостоятельно и не зависеть от других
Работать в команде и рассчитывать на помощь коллег
Организовывать и контролировать процесс работы

Быстрый ответ

Для того чтобы вернуть функции window.alert исходное поведение в браузере Chrome, достаточно выполнить следующий код:

JS
Скопировать код
let originalAlert = window.alert.bind(window);
window.alert = (...args) => originalAlert(...args);
console.log("Работает!");

Теперь originalAlert будет содержать в себе оригинальную функцию уведомлений Chrome. Скопируйте этот код, вставьте его в консоль разработчика и выполните его, чтобы восстановить стандартное поведение уведомлений.


Кинга Идем в IT: пошаговый план для смены профессии

Первичная проверка

Перед тем как углубляться в поиск решения проблемы, осуществите ряд базовых проверок:

  • Проверьте, не блокируют ли уведомления настройки Chrome и установленные расширения. Для этого перейдите по адресу chrome://settings/content/notifications.
  • Проверьте наличие ошибок JavaScript с помощью console.log, которые могут блокировать вывод уведомлений.
  • Попробуйте использовать window.alert в других браузерах, чтобы понять, связана ли проблема конкретно с Chrome.

Визуализация

Представим, что Google Chrome — это игровой парк, а window.alert — это клоун, который развлекает посетителей. Предположим, что кто-то решил "убрать" его. Давайте вернём веселье обратно:

JS
Скопировать код
let originalAlert = window.alert.bind(window);
window.alert = (...args) => originalAlert(...args);
console.log("Кто там?");

Теперь у нас:

Markdown
Скопировать код
До:       🏰🔒 (Скука)
После: 🏰🌟 (Веселье вернулось!)

Возвращение window.alert — это возвращение доброго хаоса в наш игровой парк!


Дополнительная диагностика

Если быстрое решение не помогло, обратимся к другим возможным причинам проблемы в Chrome:

Сброс настроек Chrome

Верните исходные настройки Chrome, чтобы исключить влияние локальных конфигураций:

  1. Введите chrome://settings/reset в адресной строке.
  2. Нажмите на кнопку Восстановить настройки по умолчанию.
  3. Подтвердите выбор, нажав на кнопку Сбросить настройки.
Подробнее об этом расскажет наш спикер на видео
skypro youtube speaker

Очистка истории браузера

Иногда сохранённые данные могут влиять на корректность работы JavaScript:

  1. Перейдите по ссылке chrome://settings/clearBrowserData.
  2. Отметьте галочками Кэшированные изображения и файлы и Файлы cookie и другие данные сайтов.
  3. Нажмите кнопку Очистить данные.

После этого обновите страницу, чтобы применить изменения.

Возможное влияние расширений и переопределений

Иногда работа скриптов может быть нарушена расширениями, а также переопределениями, заданными через инструменты разработчика:

  • Попробуйте отключать расширения по одному для определения того, которое вызывает проблему.
  • В инструментах разработчика Chrome перейдите по пути Исходники -> Переопределения для проверки возможно переопределённого кода.

Полезные материалы

  1. Метод alert() объекта Window – Web API | MDN — детальное описание метода window.alert на MDN.
  2. Аналог функции sleep() в JavaScript – Stack Overflow — обсуждение работы с таймерами в JavaScript на StackOverflow.
  3. Что нового в Инструментах разработчика (Chrome 89) – Блог | Chrome для разработчиков — статья о новых функциях инструментов разработки Chrome.
  4. chrome.tabs – API | Chrome для разработчиков — руководство Google по использованию executeScript в расширениях.
  5. Политика безопасности контента – Статьи | web.dev — статья об ограничениях безопасности JavaScript и политиках безопасности контента.
  6. Оценка строки как математического выражения в JavaScript – Stack Overflow — обсуждение возможности переопределения функций приведено в посте на StackOverflow.
  7. Метод alert() объекта Window — основы использования метода alert представлены на ресурсе W3Schools.
Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей
Как вернуть функции window.alert исходное поведение в Chrome?
1 / 5