tampermonkey запуск скрипта через контекстное меню

127
11 мая 2021, 18:50

Как запустить скрипт нажав правую кнопку мыши и выбрав нужный скрипт? Использую этот параметр:

@ run-at context-menu

и пытался использовать вот такую функцию:

GM_registerMenuCommand ("Запуск", start);

Где start - это название функции запускающей программу.

Так как же все таки запустить программу таким образом?

Answer 1

Прошу прощения за мой машинно-русский перевод.

В любом случае, @run-at context-menu иGM_registerMenuCommand() специально не предназначены для совместного использования.
Первый размещает пункт контекстного меню на каждой странице. Второе место - меню меню Tampermonkey только для выбранных страниц (как определено директивами @ match,@ include и т. Д.).

Рассмотрим этот скрипт Tampermonkey (который работает только в браузерах Chrome):

// ==UserScript==
// @name         context-menu fun (забавное контекстное меню)
// @match        https://ru.stackoverflow.com/tour
// @grant        GM_registerMenuCommand
// @run-at       context-menu
// ==/UserScript==
console.log ("Запуск скрипта");
GM_registerMenuCommand ("Запуск", start);
function start () {
    console.log ("Функция запуска запущена.");
}

Обратите внимание, что строка @match будет игнорироваться, поскольку используется @run-at context-menu.

Если вы установите этот скрипт и посетите https://ru.stackoverflow.com/tour, вы увидите:

1) Во-первых, нет пункта меню Tampermonkey для этого скрипта и нет сообщений в консоли:

2) Затем запустите скрипт из контекстного меню страницы:

3) Затем вы увидите пункт меню Tampermonkey, который вы можете запустить:

READ ALSO
На сколько это правильно? (DOM)

На сколько это правильно? (DOM)

Только начал учить Js, сейчас прохожу блок по DOMНаписал абстрактную регистрацию пользователя с проверкой на совпадение паролей, на сколько...

89
Увеличение значения объекта

Увеличение значения объекта

Есть три кнопкиПо нажатию на первую кнопку запускается первый секундомер, по нажатию на вторую останавливается первый и запускается второй...

117
При обращении к массиву по индексу “undefined”

При обращении к массиву по индексу “undefined”

Создаю массив из массивов данных полученного из CSV файлаПри обращении к конкретному массиву по индексу выводит "undefined"

90
setState сохраняет значение со второго раза

setState сохраняет значение со второго раза

На странице реализована возможность сохранения настроекНа форме присутствует 3 поля

123