Может ли TamperMonkey создать закладку? - PullRequest
0 голосов
/ 22 апреля 2019

В: Можно ли написать команду в этом сценарии, которая автоматически сохраняет исходный адрес в виде закладки в этой папке, прежде чем перенаправить меня? Я не могу найти такую ​​команду.

Справочная информация:

Довольно много нового в программировании. Я студент со сломанной рукой. Когда я сталкиваюсь с интересной статьей за платным доступом, я просто перезагружаю страницу, используя прокси университета. С одной сломанной рукой я должен делать все с другой стороны. Поэтому я написал javascript в tampermonkey (похожий на greasemonkey), который переписывает URL-адрес и загружает эту страницу.

Чтобы отслеживать статьи, которые я прочитал, я добавляю адрес в закладки в папке «Уже прочитано».

Код до сих пор: (Пока нет команды закладки.)

// ==UserScript==
// @name         Cat.
// @include      https://www.sciencedirect.com/science/article/*
// @grant        GM_setClipboard
// @grant        GM_setValue
// @grant        GM_getValue
// @grant        GM_deleteValue
// ==/UserScript==

(function() {
    'use strict';
    var OldURL = location.href;
     //Saves current URL into a string, "OldURL"
    location.href = OldURL.replace('https://www','http://proxy.ub.umu.se/login?url=https://www');
     //replaces the ScienceDirect domain, replaces it with the university proxy, and loads that address.

Желаемый результат: автоматически добавить текущую страницу в мои закладки.

Желательно в заданной папке с закладками, но я был бы очень признателен, чтобы просто добавить закладку в любом месте. (Сломанная рука - это не весело, учеба - это мой катарсис для борьбы со скукой, поэтому мне очень нужно ее получить.) ЛЮБАЯ помощь будет принята с благодарностью!

Что я пробовал:

Я пробовал большинство команд JavaScript, связанных с закладками, которые мог найти (Вот так я понял остальные функции TamperMonkey.) Но, похоже, ни одна из них не работает. Я также попытался включить команды, позволяющие TamperMonkey запускать скрипт без ограничений безопасности, например, // @grant GM_deleteValue и т. Д.

1 Ответ

1 голос
/ 22 апреля 2019

Нет, скрипт Tampermonkey / Greasemonkey не может добавлять закладки, поскольку такие скрипты не могут повлиять на "хром" браузера (не Google) Пользовательский интерфейс - по уважительной причине.

Теоретически,Tampermonkey может сделать закладки несколько более доступными для сценариев Tampermonkey , но пока не имеет , и до сих пор не было большого (¿какого-либо?) Спроса на такую ​​функцию.

Вы можете (вероятно / использовали для возможности) написать расширение для Firefox или Opera, которое делает это.


Тем временем Tampermonkey может хранить список переписанных URL, но это немногоболее сложный, чтобы обернуть пользовательский интерфейс.

Во-первых, используйте location.assign() вместо location.replace(), если вы этого еще не сделали.Таким образом, большинство таких ссылок будут отображаться как посещенные в вашей истории и на любых страницах, которые не нарушили пользовательский интерфейс ссылок.

...