Манипулировать DOM в расширении Chrome в конкретном div - PullRequest
0 голосов
/ 31 марта 2019

Если я напишу это в своем background.js, все будет в порядке:

$("body").append('<p>hello<p/>');

Но если я хочу написать в конкретном div HTML, я не могу написать свой элемент:

$('.re-DetailFeatures').first().before('<p>hello<p/>');

Это мои "content_scripts":

    "content_scripts": [ {
        "js": [ "jquery.min.js", "background.js" ],
        "matches": [ "http://*/*", "https://*/*"]
      }],

И ошибка, которую дает мне: "Uncaught TypeError: $ (...). First не является функцией"

1 Ответ

0 голосов
/ 31 марта 2019

Вы должны убедиться, что файл jQuery вызывается до запуска вашего скрипта.Теги скрипта внутри тела выполняются до загрузки jquery.min.js, потому что он вызывается в конце документа.Чтобы решить эту проблему, вы можете:

  • Поместить jQuery в тег HEAD
  • Обернуть ваш скрипт в обработчик событий готового документа.Для получения дополнительной информации об этом, пересмотрите этот ответ
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...