2010-07-06 2 views
1

На странице, которую я посещаю, у нее есть внешний скрипт с медленной загрузкой, который иногда занимает так много времени, что страница в основном непригодна для использования. Отключение этого скрипта полностью устраняет некоторые функции, но это лучше, чем ничего.Остановить медленную загрузку скрипта с помощью GreaseMonkey

Есть ли способ использовать greasemonkey для отмены сценария? Я знаю, что могу использовать NoScript, но я хотел дать ему шанс (с тайм-аутом JS).

Я вроде сомневаюсь (с Greasemonkey даже не кажется, запускать скрипты, пока страница не закончит загрузку), но я хотел бы проверить, чтобы убедиться,

ответ

1

Этот сценарий находится в другом домене (который не используется (почти) чем-либо еще)?

Если это так, вы можете заблокировать доступ к нему, изменив файл hosts; например, см. http://someonewhocares.org/hosts/

1

Вполне возможно, нет. Поскольку Greasemonkey работает последним, вы не можете удалить тег, прежде чем это произойдет, и я уверен, что никакая форма Javascript не позволит вам убить HTTP-запрос любого типа.

Вы пробовали просто удалить тег сценария, прежде чем он полностью завершит загрузку? Я подозреваю, что в некоторых браузерах это может сделать трюк, так как я думаю, что сценарии Greasemonkey работают на DOMReady, а не нагрузка.

+0

Да, я пробовал это. Я даже не могу запустить свой скрипт, когда внешний скрипт не загружается - страница просто зависает, ожидая на нем, и GM не нажимает, пока я не нажму кнопку остановки. Благодаря! – rampion

+0

@rampion - странно, так как я подтвердил, что Greasemonkey на самом деле [на DOMContentLoaded] (http://wiki.greasespot.net/DOMContentLoaded). Конечно, раньше мне не приходилось сталкиваться со слишком грязными вещами - я полагаю, что сценарии должны загружаться до того, как DOM считается готовым = / – Matchu

Смежные вопросы