Я просто хочу сохранить, обновить страницу, и мои изменения появятся, как в Firefox. Чтобы перетащить его и установить его, каждый раз становится раздражающим.Обновите скрипт greasemonkey в chrome без переустановки?
Любые идеи?
Я просто хочу сохранить, обновить страницу, и мои изменения появятся, как в Firefox. Чтобы перетащить его и установить его, каждый раз становится раздражающим.Обновите скрипт greasemonkey в chrome без переустановки?
Любые идеи?
Если вы не хотите переустанавливать скрипт, вы можете перезапустить хром.
Это должно вносить изменения в ваши изменения.
Я согласен, это очень раздражает
Вы можете сделать это, если у вас есть где-то сервер, где вы можете импортировать измененный файл.
Как это
// a function that loads jQuery and calls a callback function when jQuery has finished loading
function addJQuery(callback) {
var script = document.createElement("script");
script.setAttribute("src", "http://server.url/Custom/jquery.min.js");
script.addEventListener('load', function() {
var script = document.createElement("script");
script.textContent = "(" + callback.toString() + ")();";
document.body.appendChild(script);
}, false);
document.body.appendChild(script);
}
function addScript(callback) {
var script = document.createElement("script");
script.setAttribute("src", "http://server.url/Custom/Custom script.js");
script.addEventListener('load', function() {
var script = document.createElement("script");
script.textContent = "(" + callback.toString() + ")();";
document.body.appendChild(script);
}, false);
document.body.appendChild(script);
}
// load jQuery and execute the init function
addJQuery(addScript);
Это загружает первый JQuery тогда мой пользовательский сценарий, когда я запустить веб-страницу, всегда перегружает весь сценарий.
Возможно, это тоже поможет.
Да, есть способ сделать это. Используя метод, принятый от this brilliant answer (^ _ ^), вы можете редактировать сценарии - на месте - и просто нажать ссылку «Обновить», чтобы изменения вступили в силу.
Этот метод имеет дополнительный бонус, что в Chrome Extensions folder не получает завален непонятных имен папок и файлов, и вы можете легко найти скрипт, который вы хотите настроить.
Вот как настроить рабочую среду, чтобы позволить легко обновлять скрипт:
Создайте каталог, который удобно для вас, и не там, где Chrome обычно ищет расширения . Например, Create: C:\MyChromeScripts\
.
Это будет место, где все ваши сценарии будут жить в будущем.
Для каждого сценария создайте свой собственный подкаталог. Например, Script_1
, Script_2
и т.д.
Каждый подкаталог должен содержать свой сценарий, EG MyScript1.user.js
, а также любые файлы, используемые этим скриптом.
Теперь для секретного соуса ... Вы также должны создать файл манифеста в этом подкаталоге, и его необходимо назвать: manifest.json
.
Пример содержания, как минимум:
{
"manifest_version": 2,
"content_scripts": [ {
"exclude_globs": [ ],
"include_globs": [ "*" ],
"js": [ "MyScript1.user.js" ],
"matches": [ "https://stackoverflow.com/*",
"https://stackoverflow.com/*"
]
} ],
"description": "This script does X, Y, and Z.",
"name": "My script number 1",
"version": "1"
}
Теперь в менеджере расширений Chrome (URL = хром: // расширения/) Развернуть Режим разработчика ,
Щелкните Загрузить распакованное расширение ... кнопку.
Для папки, вставить в папку для вашего скрипта, например:
C:\MyChromeScripts\Script_1
.
Ваш скрипт будет установлен и функционирует.
Продолжить Расширения страница открыта. Теперь, когда вы сохраняете какие-либо изменения в * .js-файле, нажмите Обновить ссылка для их вступления в силу немедленно.
Наслаждайтесь!
Папка расширений по умолчанию:
Windows XP: C:\Documents and Settings\***{username}***\Local Settings\Application Data\Google\Chrome\User Data\Default Windows Vista: C:\Users\***{username}***\AppData\Local\Google\Chrome\User Data\Default Windows 7: C:\Users\***{username}***\AppData\Local\Google\Chrome\User Data\Default
Хотя вы можете изменить его, запустив Chrome с опцией --user-data-dir=
.
Это здорово, есть ли способ посмотреть каталог? Мне все равно нужно перейти на страницу расширений. –
@BartlomiejLewandowski, Не то, что я знаю, но не соблюдал изменения Chrome, так как они укоренили собственные скрипты. –
Самый простой способ сделать это состоит в использовании двух файлов:
userscript.user.js
с GM заголовков, которые загружает script.js
. Вы можете очистить кеш каждый день (скажите, чтобы он загружал script.js
с добавленной случайной строкой запроса)script.js
, который содержит фактический скрипт.Например, я сделал это here
//#!userscript.user.js
// ==UserScript==
//GM headers
// ==/UserScript==
(function(){
var d=new Date();
var script = document.createElement("script");
script.type = "text/javascript";
script.src="script.js?purge="+d.getMonth()+""+d.getDay(); //appends a new query string every day. This evades browser cache
document.body.appendChild(script); //you can append to `head` as well, I used body here sine I needed jQuery already loaded
})();
Скрипт загружает script.js?purge=xyz
, где xyz
зависит от даты. Строка запроса чистки гарантирует, что сценарий будет кэшироваться только в течение дня, а не больше - на следующий день он будет загружен заново. Для использования в целях развития, "script.js?purge="+Math.random()
лучше. Если скрипт находится на вашей локальной машине, вам не нужно беспокоиться о кеше для себя.
Теперь, если вы внесете изменения в script.js
, завтра каждый будет использовать обновленную версию.
Блестящий! Почему больше людей не говорят об этом методе? –