Comments 58
Никогда не напрягался модальностью алертов, но, черт подери, классно сделано!
+1
Супер, а для Internet Explorer 6 есть такой же?
-4
У модальных диалогов есть особенность прерывать поток исполнения — с таким решением такое поведение измениться.
+4
UFO just landed and posted this here
а вот представьте что будет с вашим браузером и таким User JS когда вы попадете (мб случайно) на сайты розыгрыши… аля «Вы сюда попали вам не уйти (жмакаем ок) — появляется сл сообщение такого рода»… а когда кнопки ок нету и это все будет оч быстро происходить? ваш браузер может не выдержать :)
0
В таких случаях диалог сделают не модальным
0
а автор скрипта и автор новости — один и тот же человек?
мне вот что интересно — ну почему нельзя сделать, чтобы алерт блокировал только один таб, а не весь браузер?
мне вот что интересно — ну почему нельзя сделать, чтобы алерт блокировал только один таб, а не весь браузер?
0
На то он и alert :)
0
ну собственно это из-за того, что браузере все табы работают в одном потоке. в Хроме, насколько я помню, такой проблемы уже не стоит. Но надо проверить
0
кстати похоже что автор новости и скрипта — один человек. у него в инфо на юзерскриптс написан сайт, совпадающий с ником на хабре
0
Да, один и то же :-)
А смысл блокировки?
А смысл блокировки?
0
UFO just landed and posted this here
сижу я, Хабру читаю, а тут «какой-то сайт с рефератами» в соседнем табе по таймауту мне алерт выдает!
алерт — он ведь к определенной странице относится, а не к моему браузеру.
если бы не AlertStopper, то даже случайная ошибка в собственном скрипте, во время дебагинга, заставила бы меня перезапускать все вкладки в браузера.
алерт — он ведь к определенной странице относится, а не к моему браузеру.
если бы не AlertStopper, то даже случайная ошибка в собственном скрипте, во время дебагинга, заставила бы меня перезапускать все вкладки в браузера.
0
с помощью вашего скрипта я смог сделать себе пустую подпись на gmail =)
0
ваш алерт не всегда вілазит поверх всех окон :) сделайте ему z-index побольше :)
0
Забыл: Opera 10 final.
0
Firefox 3: +1
0
Починено! Но только для Оперы.
Важное примечание: скрипт должен называться nice-alert.js, без «user». Иначе Опера будет работать в режиме совсестимости с Gresemonkey и запускать скрипты позже.
Теперь на early-run.html все алерты в Опере должня быть nice.
Важное примечание: скрипт должен называться nice-alert.js, без «user». Иначе Опера будет работать в режиме совсестимости с Gresemonkey и запускать скрипты позже.
Теперь на early-run.html все алерты в Опере должня быть nice.
0
потверждаю на Opera 10.10 beta
0
Есть проблема с ранним запуском. UserJS срабатывает слишком поздно.
Я починю это для Оперы. А вот для Файрфокса не получится, так как Greasemonkey начинает работать всегда после загрузки страницы.
Я починю это для Оперы. А вот для Файрфокса не получится, так как Greasemonkey начинает работать всегда после загрузки страницы.
0
ну еще можно с таким скриптом заспамить алертами и вереница уползет далеко вниз за пределы страницы. может какую-нибудь опцию типа закрыть все?
0
Мне кажется, весьма спорная штука… Конечно, так в большинстве случаев удобнее, но вдруг там действительно важное сообщение, которое необходимо прочитать… а справа там «мертвая зона» для глаз, можно просто не заметить это сообщение… Кнопки ОК там нет, значит, сообщение пропадёт само через несколько секунд…
Решил себе всё же не ставить…
Решил себе всё же не ставить…
+1
Плохо только, что стили документа к нему применяются…
0
На каких сайтах с этим проблемы?
0
Здесь например благополучно получим невидимый текст
agtp.romhack.net/project.php?id=cavestory
agtp.romhack.net/project.php?id=cavestory
0
жаль в chrome не работает.
0
Да, почему-то не работает. Я пока не могу понять почему.
0
Для третьего хрома: var w = contentWindow || window.wrappedJSObject || window;
+1
в четверке (dev build) не хочет.
0
Для неё потребуется больше изменений: groups.google.com/group/chromium-extensions/browse_thread/thread/a4ff886cfecf80ca
+1
Спасибо.
Вы знаете что именно нужно поменять в nice-alert.user.js, чтобы он заработал? Я прочитал всю дискуссию, и мне не стало ясно в чём проблема.
Если я добавляю alert(123) в конец самого скрипта, то он работает. Если вызываю alert со страницы, то нет.
Вы знаете что именно нужно поменять в nice-alert.user.js, чтобы он заработал? Я прочитал всю дискуссию, и мне не стало ясно в чём проблема.
Если я добавляю alert(123) в конец самого скрипта, то он работает. Если вызываю alert со страницы, то нет.
0
Проблема в том что window в скрипте и на веб-странице разные. В дискуссии предлагали сделать так:
location.href=«javascript:(function(){ваш_код})()»
Только двойные кавычки из GM_addStyle уберите. Сжать код в одну строчку можно с помощью dean.edwards.name/packer/
После этого достаточно логичным представляется его конвертация в расширение.
manifest.json
{
«name»: «Nice alert»,
«version»: «0.73»,
«description»: «Not modal alert box »,
«content_scripts»: [
{
«matches»: [«http://*/*», «https://*/*», «file://*»],
«js»: [«nice_alert.user.js»]
}
]
}
Запускаем конвертацию: «c:\Documents and Settings\aRuzanow\Local Settings\Application Data\Google\Chrome\Application\chrome.exe» --pack-extension=c:\extensions\nice_alert
Результат: ruzanow.ru/extensions/nice_alert.crx
location.href=«javascript:(function(){ваш_код})()»
Только двойные кавычки из GM_addStyle уберите. Сжать код в одну строчку можно с помощью dean.edwards.name/packer/
После этого достаточно логичным представляется его конвертация в расширение.
manifest.json
{
«name»: «Nice alert»,
«version»: «0.73»,
«description»: «Not modal alert box »,
«content_scripts»: [
{
«matches»: [«http://*/*», «https://*/*», «file://*»],
«js»: [«nice_alert.user.js»]
}
]
}
Запускаем конвертацию: «c:\Documents and Settings\aRuzanow\Local Settings\Application Data\Google\Chrome\Application\chrome.exe» --pack-extension=c:\extensions\nice_alert
Результат: ruzanow.ru/extensions/nice_alert.crx
+1
Спасибо за расширение! Оно работает.
location.href=«javascript:...» — это убожество. Разработчики Хрома странные люди. Они оставили доступ к window страницы, но сделали его неудобным для разработчиков. Security от этого лучше не стало.
Получается, что Хром 4 не имеет обратную совместимость с большинством UserJS. Это очень плохо.
location.href=«javascript:...» — это убожество. Разработчики Хрома странные люди. Они оставили доступ к window страницы, но сделали его неудобным для разработчиков. Security от этого лучше не стало.
Получается, что Хром 4 не имеет обратную совместимость с большинством UserJS. Это очень плохо.
+1
Здорово! Спасибо. :)
Единственное, хорошо бы долбавить !important к css-свойствам, чтобы не перекрывались стилями страницы.
Единственное, хорошо бы долбавить !important к css-свойствам, чтобы не перекрывались стилями страницы.
+1
А можно ссылку пример? ^_^'
Заборзел, ага =)
Заборзел, ага =)
0
А сделайте, пожалуйста, еще оперное расширение.
0
Sign up to leave a comment.
Nice alert