2015-01-20 2 views
3

Мне нужно создать расширение Chrome для управления HTML на некоторых страницах.Приложение или расширение Chrome для удаления элемента страницы?

В принципе, мне нужно удалить <div class="feedmain"> внутри страницы. В настоящее время я могу удалить этот <div> с помощью инструментов разработчика, но элемент, очевидно, перезагружается при перезагрузке страницы, поэтому я хотел бы разработать расширение, которое сделает это для меня автоматически.

Так что я хотел бы знать, если это возможно, и обзор того, как это можно сделать в расширении.

+0

К сожалению, этот вопрос, вероятно, слишком широк для переполнения стека. И просить учебник за пределами сайта сразу считается вне темы. Чтобы задать вопрос, на который мы можем ответить, сделайте еще несколько исследований; и когда у вас есть более узкий вопрос реализации - спросите еще раз. Пожалуйста, ознакомьтесь со следующими 2 справочными руководствами: [тур] и [что рассмотрено по теме] (http://stackoverflow.com/help/on-topic). – Xan

+2

P.S. Тот факт, что вы отметили вопрос с помощью [tag: java], показывает, что вам слишком рано задавать здесь ответный вопрос. – Xan

+0

@Xan Я мог бы добавить некоторые скрипты, на которые я смотрел, но в основном искал толчок в правильном направлении. Не знаете, почему это будет рассматриваться против правил? Но что бы то ни было, у меня был очень хороший ответ, который действительно помогает мне застрять в этом. В любом случае спасибо. –

ответ

7

Да, абсолютно, это возможно и довольно легко сделать: все, что вам нужно, - это создать расширение с помощью скрипта контента, который будет вставляться на эту конкретную страницу и удалить элемент для вас.

Чтобы сделать то, что вы хотите, вам нужно:

  1. Создание простого пустого Chrome Extension (см here для официального руководства) с manifest.json файлом.
  2. Укажите поле "content_scripts" в поле manifest.json и объявите скрипт, который хотите ввести. Что-то вроде этого:

    "content_scripts": [ 
        { 
         "matches": "http://somesite.com/somepage.html", 
         "js": "/content_script.js" 
        } 
    ] 
    

    Посмотрите here, чтобы узнать, как содержание работы скриптов.

  3. Создайте content_script.js, который удалит элемент для вас. Этот скрипт будет в основном содержать следующие две строки:

    var element = document.querySelector('div.feedmain'); 
    element.parentElement.removeChild(element); 
    
+1

Спасибо! Это было действительно полезно для удаления тега на определенном сайте при загрузке страницы. Некоторые незначительные изменения, которые я должен был сделать, и другие советы. Мне пришлось добавить ключ '' manifest_version ": 2,' к моему манифесту, иначе Chrome отвергнет его. В будущем это может быть выше, поэтому проверьте документы. Мне также пришлось обернуть мой скрипт и матчи в массивы. '' matches ": [" site "]'. Наконец, мне пришлось указать шаблон для URL-адреса. Установка корневого домена для 'совпадений 'была недостаточной. '' matches ":" http://somesite.com/somepage.html/* ",' Еще раз спасибо! –

Смежные вопросы