Как скомпилировать расширение Google Chrome из кода, который я нашел на userscripts.org?

Я наткнулся на этот пользовательский скрипт, который работает в Google Chrome.

Я хочу использовать его как расширение Google Chrome, так как это даст мне возможность конвертировать многие другие коды из пользовательских скриптов в расширения Google Chrome.

Может ли кто-нибудь дать мне пошаговое руководство по созданию расширения Google Chrome из этого пользовательского кода?

// ==UserScript==
// @name           Facebook Ads Hider
// @author         Jose Luis Martin
// @namespace      http://joseluismartin.info
// @description    Hide Ads on Facebook
// @include        http://www.facebook.com/*
// @run-at         document-start
// 
// ==/UserScript==

if (document.addEventListener) {
    document.addEventListener("DOMNodeInserted", onNodeInserted, false);
}

// Event listener to hide ads containers
function onNodeInserted(event) {
    target = event.target;
    if (target.className == "ego_column") {
        hideElement(target);
    }
}

// trivial hide of ads container
function hideElement(elto) {
    elto.style.visibility = "hidden";
    elto.style.hight = "0px";
    elto.style.width = "0px";
}

Пожалуйста, не отвечайте, что в этом нет необходимости, так как пользовательские скрипты могут запускаться в Google Chrome. Я делаю это, чтобы научиться делать расширения Google Chrome.

Руководство по расширению Google Chrome очень плохо для понимания и вызывает у меня рвоту — я не знаю кто это сделал!


person Shiveta Pandita    schedule 12.09.2012    source источник


Ответы (1)


В Google Chrome пользовательские скрипты являются расширениями. Сценарий упаковывается как скрипт содержимого, а расширение manifest.json создается автоматически.

Чтобы перейти к «полноценному» расширению:

  1. Сначала организуйте свой сценарий, исходный файл (файлы) и явно создайте manifest.json, как показано в этом ответе.

  2. На данном этапе вам не нужно изменять код этого пользовательского скрипта, но вы захотите передать значения директив @include и @run-at в файл manifest.json, который вы создадите. Обратитесь к примеру в этом связанном ответе.

  3. Прочтите страницу Сценарии контента и обратите внимание, как манифест может можно использовать для простого добавления CSS, jQuery, вашего пользовательского скрипта (сценарий контента AKA) и т. д.

  4. Скрипты контента — это один из трех основных инструментов, доступных для расширений Chrome. Два других — это фоновая страница и страницы пользовательского интерфейса. Узнайте больше о тех, кто начинается с Обзор разработки расширений. .

  5. Наконец, вы можете упаковать свое расширение, как описано в этом ответе.

person Brock Adams    schedule 12.09.2012
comment
Таким образом, вы не можете изменить файл user.js без использования расширений. Ну, это означает, что безголовый хром не добавляет RIP user.js. Файрфокс это позволяет. - person Tetora; 02.11.2017