alert() не работает в Chrome

error

'Nuff сказал. Я понятия не имею, почему использование alert() не будет работать. Он отлично работает в Firefox, но дает эту ошибку в Chrome.

5 ответов


window.alert = null;
alert('test'); // fail
delete window.alert; // true
alert('test'); // win

window пример DOMWindow, и что window.alert, правильная реализация "затеняется", т. е. при доступе к alert он сначала ищет его на


недавно у меня была такая же проблема на моем тестовом сервере. После поиска причин, по которым это может произойти, и тестирования решений, которые я нашел здесь, я вспомнил, что несколько часов назад, когда сценарий, над которым я работал, дико выскакивал оповещения, я щелкнул опцию "остановить эту страницу от создания всплывающих окон".

решение было так же просто, как закрыть вкладку и открыть новую!


взгляните на эту тему:http://code.google.com/p/chromium/issues/detail?id=4158

проблема вызвана javascript метод " окно.открыть (URL, windowName[, windowFeatures])". Если 3-е указан параметр windowFeatures, тогда alert box не работает в ограниченное всплывающее окно в Хроме, вот упрощенное сокращение:

http://go/reductions/4158/test-home-constrained.HTML-код

Если 3-й параметр windowFeatures игнорируется, затем в окне alert работает всплывающее окно в Chrome (всплывающее окно на самом деле открыта новая вкладка в Chrome), как это:

http://go/reductions/4158/test-home-newtab.HTML-код

Это не происходит в IE7, Firefox3 или Safari3, это специфическая проблема chrome.

см. Также приложения для упрощенной сокращения


вот фрагмент, который не нуждается в ajQuery и включит оповещения в отключенном iframe (например, в codepen)

for (var i = 0; i < document.getElementsByTagName('iframe').length; i++) {
    document.getElementsByTagName('iframe')[i].setAttribute('sandbox','allow-modals');
}

вот демонстрация codepen, работающая с предупреждением () после этого исправления:http://codepen.io/nicholasabrams/pen/vNpoBr?editors=001


вставляем эту строку в конец тела. Возможно, DOM еще не готов на данный момент эта строка читается компилятором.

<script type="text/javascript" src="script.js"></script>"