@Nick_Apex

Как сделать мгновенный запуск js из расширения chrome?

К примеру:
Расширение которое будет подменять содержимое placeholder.
Если в background.js сделать вот так,
function first() {
	var change = document.querySelector('input');
	change.placeholder = 'Вася, пиши тут';
};
first();

то браузер практически мгновенно загрузит скрипт. НО, если у меня медленный интернет или что-то пойдет не так и background.js загрузится перед прогрузкой этого placeholder'a, то, как минимум, ничего не произойдет. А если код сложный - что-то таки произойдет, но явно не то чего ожидали)).

Если же, сделать вот так,
function first() {
	var change = document.querySelector('input');
	change.placeholder = 'Вася, пиши тут';
};
window.addEventListener('load', first, false);

то background.js загрузится только после полной загрузки странички.

Вопрос: как сделать загрузку скрипта сразу же после прогрузки placeholder'a?
  • Вопрос задан
  • 205 просмотров
Решения вопроса 1
@Sayonji
Можно не ждать картинки и другие ресурсы.
document.addEventListener("DOMContentLoaded", function(event) {
    console.log("DOM fully loaded and parsed");
  });

Тем не менее, дождаться прогрузки HTML придется. Можете скомбинировать варианты:
function first() {
  var change = document.querySelector('input');
  if (!change)
    return false;
  change.placeholder = 'Вася, пиши тут';
  return true;
};
if (!first())
  document.addEventListener("DOMContentLoaded", first);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы