Как я могу отключить всплывающие окна / предупреждения JavaScript в Chrome?

49664
CreeDorofl

Извините, если это спросили. Я уже нашел несколько решений, которые не работают. Не уверен, что я делаю не так.

Я не хочу отключать все JavaScript, только окна предупреждений Javascript. Те, которые всплывают и заставляют вас нажать OK или X, чтобы закрыть их.

Я нашел пользовательские скрипты, которые утверждают, что делают это (пример: http://userscripts.org/scripts/show/58252 ). Я установил chrome на канал dev, запустил chrome с ключом --enable-user-scripts, скрипт показывается как установленный.

Но я все еще получаю окна с предупреждениями.

Пример окна предупреждения, которое не отключается, находится по адресу http://wordswithfriends.net/ - вставьте любое слово для мусора в слово валидатор на правой боковой панели. Вы получите всплывающее окно, сообщающее, что это не слово.

19

3 ответа на вопрос

16
Brock Adams

The only way to disable the alert boxes is to install either an extension or a userscript. The userscript you linked is for Firefox Greasemonkey and will not work on Chrome.

Additionally, the misbehaving page you cite is sneaky and runs that "word validator" in an iframe with code that fires the alert() immediately upon iframe reload.

But here's a userscript that defeats it:

// ==UserScript== // @name Wordswithfriends, Block javascript alerts // @match http://wordswithfriends.net/* // @run-at document-start // ==/UserScript== addJS_Node (null, null, overrideSelectNativeJS_Functions); function overrideSelectNativeJS_Functions () { window.alert = function alert (message) { console.log (message); } } function addJS_Node (text, s_URL, funcToRun) { var D = document; var scriptNode = D.createElement ('script'); scriptNode.type = "text/javascript"; if (text) scriptNode.textContent = text; if (s_URL) scriptNode.src = s_URL; if (funcToRun) scriptNode.textContent = '(' + funcToRun.toString() + ')()'; var targ = D.getElementsByTagName ('head')[0] || D.body || D.documentElement; targ.appendChild (scriptNode); } 

If you really want to disable ALL alerts() on ALL pages (Not recommended), then delete the // @match line.

Я принял этот ответ так сильно, что моя мышь взорвалась. Работает как шарм. Большое спасибо ^^ CreeDorofl 12 лет назад 7
Пожалуйста! Рад помочь. Brock Adams 12 лет назад 0
Почему не рекомендуется отключать все оповещения? Я никогда не сталкивался с полезными предупреждениями, кроме «Вы действительно хотите выйти из этой вкладки» на несохраненных страницах прогресса. Coretek 7 лет назад 0
Не работает, если на странице отображаются предупреждения во время загрузки. riv 6 лет назад 0
@riv, открой новый вопрос, если у тебя есть случай, когда он не работает. Не забудьте предоставить полный рецепт для дублирования проблемы. Brock Adams 6 лет назад 0
2
ecmanaut

Для этого есть хотя бы одно расширение в Chrome Web Store . Работает для меня, хотя звучит немного подозрительно, что он имеет дополнительную поддержку режима рекламы, которую вы можете отключить на странице настроек. (Я не нашел настройки, но решил, что это не повредит нулевой маршрутизации api.s13.us.)

0
Serhiy

Если вы ищете инструмент для этого и не хотите связываться с пользовательскими сценариями - есть хороший инструмент, который может обрабатывать любое раздражающее всплывающее окно в системе Windows - ClickOff . Вы можете скачать его здесь . Я проверил, это работает с предупреждением «Изменения, которые вы сделали, возможно, не сохранены» для сайтов SharePoint.

это звучит интересно, так как всплывающие окна с ошибками было бы неплохо удалить вообще. Позволяет ли вам точно указать, какие диалоги вы хотите автоматически ОК / отменить, или он как-то сам выбирает их? CreeDorofl 7 лет назад 0
Да, вы можете указать, какие диалоги закрывать и какую кнопку нажимать. Serhiy 7 лет назад 0

Похожие вопросы