#javascript #html #dom #google-chrome-extension
Вопрос:
Допустим, передо мной на веб-сайте есть несколько слов или цифр. Я хочу создать программу, которая возьмет эти конкретные слова/цифры и изменит их на что-то другое. В настоящее время я собираюсь сделать это, используя расширение Google и кодируя некоторые JS в качестве сценария контента. Я так долго пытался найти способ. Я хочу, чтобы он был общим и работал на нескольких веб-сайтах, поскольку я не могу жестко кодировать идентификаторы и классы, указывающие на значения (которые мне нужны) для каждого отдельного веб-сайта.
Я пробовал querySelectorAll, document.someMethod и даже window.find() безрезультатно.
Вот еще несколько моих мыслей, которые могли бы помочь вам ответить на мой вопрос.
Есть ли способ получить HTML-код с веб-сайта и превратить его в массив, просмотреть документ и использовать операторы if, чтобы найти конкретные слова и цифры, которые мне нужны, а затем, наконец, изменить их с помощью моего кода JS? Как насчет того, чтобы просто удалить все идентификаторы и классы из HTML и проверить, имеет ли это какое-либо отношение к конкретным значениям, которые я хочу.
main.js (сценарий содержимого)
// How do I generalize querySelectorAll to take every instance of IDS or class names that follow a specific pattern? Lets say I wanted to change the values of each element in the HTML code that had IDs related to the string "titles".
ids = document.querySelectorAll('')
Если вам нужны разъяснения или подробности, пожалуйста, спросите, и я сразу же дам их.
Ответ №1:
Таким образом, эта кодовая база для расширения Chrome должна помочь вам встать на правильный путь: https://github.com/mark-monteiro/drumpfinator/blob/master/src/inject/inject.js
Он делает в основном то, что вы пытаетесь сделать. Он берет все экземпляры слова Дональд Трамп с помощью регулярного выражения и заменяет его каким-нибудь случайным забавным прилагательным.
Из этого примера вы можете использовать регулярное выражение или какой-либо массив, чтобы определить, какие слова вам нужны, и заменить их теми словами, которые вам нравятся, возможно, используя объект значение ключа.