Я пытаюсь запустить Greasemonkey script для запуска на странице. Но это не так.
Как вы отлаживаете скрипты?
Каковы наименьшие возможные шаги для запуска нового Greasemonkey script?
Я пытаюсь запустить Greasemonkey script для запуска на странице. Но это не так.
Как вы отлаживаете скрипты?
Каковы наименьшие возможные шаги для запуска нового Greasemonkey script?
вы можете записывать журналы везде в своих сценариях, чтобы получить больше следов от того, что делать в них:
GM_log("Hello, World!");
http://wiki.greasespot.net/GM_log
Дополнительная информация: http://wiki.greasespot.net/Greasemonkey_Manual:Other_Useful_Tools#JavaScript_Console
Еще один совет: взгляните на всю wiki-страницу greasemonkey. У них там много хорошего: http://wiki.greasespot.net/Main_Page
Когда я начинал с пользовательских скриптов, моя первая ошибка не использовала подстановочные знаки.
// Broken:
// @include https://www.example.com/
// Working:
// @include https://www.example.com/*
Что самый простой способ для script даже не применяться, и, таким образом, не запускается вообще. Кроме того, обязательно проверьте наличие синтаксических ошибок; некорректная точка с запятой может помешать анализу script, и поэтому он игнорируется.
В Firefox откройте "Инструменты" > "Консоль ошибок" и просмотрите его при загрузке страницы. Если вы перегружены Warnings со страницы, вы можете отфильтровать "Ошибки", которая по-прежнему часто подчеркивает вашу проблему script.
Работала моя greasemonkey script; Я добавил строку; он прекратил работать; Я удалил линию; он все еще не работал.
Я решил, что greasemonkey установил сломанный updater.php
script, когда я перезагрузил script с добавленной новой строкой. Перезагрузка старого script сохранила сломанную версию updater.php
script. В итоге я нашел сообщение об ошибке со ссылкой на updater.php
script в моей веб-консоли Firefox. Я заменил updater.php
script на файл, содержащий комментарий после загрузки новой версии script, а мой script запущен.
На mac мой updater.php
находился в: /Users/csimmons/Library/Application Support/Firefox/Profiles/81ri7k71.default/gm_scripts/Extended_LoU_Tweak
Возможно, вы найдете аналогичный файл updater.php
в своем профиле по умолчанию gm_scripts/
в Firefox.
Для меня была синтаксическая ошибка в script, и Greasemonkey не выдал сообщение об ошибке. Копирование вставки script в JS Console выявило секрет.
Убедитесь, что Greasemonkey включен в первую очередь:
Кроме того, синтаксис @include
должен иметь только один шаблон соответствия. Если вы хотите другой, добавьте еще одну строку @include
.
У меня тоже была эта проблема; это решение для меня:
Проверьте (и измените сложную) часть кода, над которым я работал, когда это произойдет
удалить и переустановить GreaseMonkey
тогда я получил реальный отчет об ошибке
EDIT: Сегодня проблема возникает чаще, чем обычно (новый выпуск?) Похоже, что веб-инструменты Firefox боевые с помощью сервера greasemonkey или JS для сообщений .
Итак, когда вы где-то смотрите (ctrl + alt + k), сообщение об ошибке появляется где-то в другом месте (попробуйте открыть другую консоль), как забавная игра.
Если URL-адрес страницы задан с помощью Javascript, а не путем навигации (например, Instagram, предоставляя своим всплывающим окнам URL с постоянной ссылкой), Greasemonkey покажет script как запущенный, но он на самом деле не запустится. Попробуйте перезагрузить URL-адрес и посмотрите, действительно ли он идет на одну страницу. Если нет, вам нужно будет сопоставить URL главной страницы, а не всплывающий URL.